* Data link layer
Data link layer에서의 link는 정보를 주고받을 수 있는 통로를 의미하며, 주고받는 정보의 단위는 frame이다.
Link의 종류에는 P2P link와 P2MP link가 있다.
P2P link(point-to-point link)
단일 송수신자 간에 통신하는 링크이다.
하나의 port에 다른 port가 transmission media를 통해 직접 연결된다.
P2MP link(point-to-multipoint link)
다수의 물리적인 port가 상호 연결되는 구성이다.
하나의 port에서 신호를 송신하면 연결된 다른 모든 port로 신호가 broadcast 된다.
P2MP link는 모든 장치가 하나의 링크를 공유하므로 각 장치를 식별할 수 있는 물리 주소(MAC 주소)가 필요하다.
* Data link layer 기능
Link를 통한 reliable 한 정보 전달을 위해 error control과 flow control 기능을 제공한다.
만약 data link layer의 protocol이 reliable 한 서비스를 제공하지 못하면 상위 계층이 책임 진다.
Physical layer를 통해 수신된 bit를 모아 frame을 구성하고 상위 계층에 넘겨주면 data link layer의 frame에 error가 발생했는지 check 한다. Error 발생 시 해당 frame을 discard 한다.
* Link
Data link layer에서의 link는 '정보를 주고받을 수 있는 통로'를 의미한다.
Physical layer에서는 전송 매체를 구분해야 하지만, data link layer에서는 모두 link로 볼 수 있다.
Link의 종류에는 일대일 통신만 이루어지는 Point to point link(P2P)와, broadcast 특성을 가지는 point to multipoint link(P2MP)가 있다.
Point to point link는 CO 방식의 protocol을 사용하고, point to multipoint link는 CL 방식의 protocol을 사용한다.
P2P link(point-to-point link)
단일 송수신자 간에 통신하는 링크이다.
하나의 port에 다른 port가 transmission media를 통해 직접 연결된다.
P2MP link(point-to-multipoint link)
다수의 물리적인 port가 상호 연결되는 구성이다.
하나의 port에서 신호를 송신하면 연결된 다른 모든 port로 신호가 broadcast 된다.
Multipoint link에서 하나의 단말이 frame을 송신하면 모든 단말이 frame을 수신한다.
만약 2개의 이상의 단말이 동시에 frame을 송신하면 frame에 error가 발생한다.(충돌)
따라서 동시에 2개 이상의 단말에서 frame을 송신할 수 없도록 제어하는 MAC 기능이 필요하다.
결론적으로, P2MP link는 모든 장치가 하나의 링크를 공유하므로 각 장치를 식별할 수 있는 물리 주소(MAC 주소)가 필요하다.
대표적으로 LAN의 링크는 multipoint link이다.
다양한 종류의 LAN이 존재하지만 현재 Ethernet 계열의 LAN이 일반적으로 사용되고 있다.
* Ethernet address
LAN은 multipoint link이므로 frame을 송신하면 broadcasting 하게 된다. 따라서 수신하는 단말의 주소인 MAC 주소를 지정한다.
* Hub
여러 대의 컴퓨터나 네트워크 기기들을 연결하기 위한 장비이다.
Shared hub
모든 포트가 동일한 대역폭을 공유한다.
즉, 하나의 포트에서 데이터를 전송하면 다른 모든 포트로 데이터가 전송되며 대역폭이 공유되므로 데이터 충돌이 발생할 가능성이 높다.
Switching hub
각각의 포트가 독립적인 대역폭을 가지고 있어 충돌이 발생하지 않는다.
* Error detection
Sender
Recever에서 error를 detection 할 수 있도록 redundancy data를 생성하여 original data와 같이 송신한다.
Redundancy data는 original data에 generating function(생성 함수)을 적용하여 생성하며,
Protocol에 redundancy data의 생성을 위한 generating function이 정의되어 있다.
Receiver
수신된 data에서 original data 부분과 redundancy data 부분을 분리하고, Original data 부분을 이용하여 redundancy data를 다시 생성한다.
Receiver에서 생성된 redundancy data와 수신된 redundancy data가 동일하면 error가 발생하지 않은 것이고,
다르면 error가 발생한 것이다. Error가 발생된 frame은 discard 한다.
Error detection의 기술에는 parity, CRC, checksum이 있다.
* CSMA/CD
Ethernet에서 사용하는 MAC으로, 아래와 같이 동작한다.
1. Device driver에서 송신할 정보를 LAN 카드에 전달한다.
2. Carrier가 존재하는지 확인(Carrier sensing)한다. Carrier가 존재한다는 것은 다른 단말이 frame을 송신하는 것이므로 기다려야 한다.
3. Carrier가 존재하지 않는 경우에 frame을 송신할 수 있다.
4. 그러나 carrier를 sensing 하는 하는 아주 짧은 시간 동안에 다른 단말에서도 carrier를 sensing 하는 경우 2개의 단말에서 모두 carrier가 없다고 판단하고 frame을 송신하게 되어 충돌이 발생한다.
5. 만약 충돌이 발생하면 jamming 신호를 보내 송신을 중단하고, binary backup 지연 후에 다시 carrier sense 과정을 수행한다.
* Repeater
신호를 재생하여 먼 거리까지 보내도록 하는 장치이다.
거리가 멀어짐에 따라 감쇄되고 잡음이 포함된 신호를 수신하여 원래의 digital 신호를 재생하는 기능을 제공한다.
Repeater는 Physical layer 장치이므로 Traffic control을 할 수 없다.
* Bridge
2개의 LAN 또는 서로 다른 네트워크를 연결하는 장비이다.
Data link layer에서 동작하며 MAC 주소를 이용하여 Packet을 전송한다.
* Switching hub(LAN Switch)
다양한 장치들을 연결하는 장비로, multiort bridge이다.
* Frame Format in Switch
Bridge로 연결된 2개의 LAN은 하나의 network이다.
하나의 network에서 frame을 송신하는 경우 상대의 LAN card 주소를 알아야 한다.
LAN 카드 주소를 알려면 ARP를 동작시켜야 하고 ARP를 동작시키려면 IP 주소를 알아야 한다.
* Router
다양한 네트워크 간에 데이터를 전송하는 장비로, Routing에 의한 packet 전달 기능을 담당한다.
Routing protocol을 통해 routing table을 관리하며, Routing table은 L3의 주소를 가지고 있다.
* Frame Format in Router
Router로 연결된 2개의 LAN은 분리된 network이다.
단말 A가 단말 B로 frame을 송신하는 경우 단말 B의 LAN 카드 주소를 몰라도 되고, 자신의 network에 연결된 router interface의 MAC 주소를 알면 된다. 최종 목적지 B까지 routing에 의해서 packet(정보)가 전달된다.
'CS > 네트워크' 카테고리의 다른 글
[데이터 통신] Network layer (0) | 2024.04.08 |
---|---|
[데이터 통신] Physical layer 관련 개념 정리 (0) | 2024.04.01 |
[데이터 통신] 계층 구조, OSI 7 Layers (0) | 2024.04.01 |
[Network] LAN, Ethernet (1) | 2023.11.21 |
[Cisco Packet Tracer] 장비 기본 설정 #2 - IP 주소 할당 (0) | 2023.11.12 |
댓글