※kocw에서 제공하는 이석복 교수님의 컴퓨터네트워크 수업을 듣고 필기한 내용입니다.
출처를 따로 밝히지 않는 한 전부 해당 수업에서 제공한 자료들이며 제가 작성한 부분에 있어 틀린 부분이 있을 수도 있다는 점 양해바랍니다.
Ethernet
- LAN이란 게이트웨이를 거치지 않고도 접근이 가능한 네트워크 단위를 뜻함
- 하나의 게이트웨이를 공유하는 매체(medium)가 하나의 LAN
- 동일한 prefix를 가지고 라우터를 거치지 않고도 통신이 가능한 서브넷도 LAN으로 구성됨
- 이더넷은 90년대부터 시작했지만 심플하고 효과가 있어 지금까지 사용됨
- 최근에는 switch를 중간에 두는 star형으로 많이 구성됨
- 프레임의 헤더에는 preamble, dest address, source address, type가 있음
- 이 중 중요한건 dest address, source address, type, 그 중 type은 네트워크의 프로토콜이 들어있음(대부분 IP 프로토콜)
- CRC는 에러채킹때 사용되는 부가적인 정보
- 이더넷은 CSMA/CD 프로토콜을 사용
질문: collision이 발생해도 감지하지 못하는 경우가 있을까?
- A와 E가 각각 보내야할 프레임이 있을때
- A가 보낸 프레임이 E도착 직전에 collision이 발생했을때
- E는 바로 알아치고 전송 중단하고 재전송을 준비함
- A가 마침 전송이 끝나버린다면 충돌난걸 알지도 못한채 전송이 끝나 A는 완벽하게 전송을 했다고 착각함
- 이런 경우를 방지하기 위해 이더넷에서는 최소 64바이트씩 데이터를 전송하게 강제함
MAC address
- 프레임에 들어있는 헤더 중 address는 IP address와는 다른 MAC address
- 48 bit 로 구성
- 24비트씩 끊어서 앞에 24비트는 제조회사, 뒤 24비트는 인터페이스 고유 넘버로 사용됨
- 랜카드가 공장에서 나올때 찍힘
- 주민번호 처럼 변경 불가능한 존재
- 프레임의 헤더 중 source address에는 자기 자신의 MAC 주소가, destination aderess에는 다음에 갈 게이트웨이 MAC주소가 적혀있음
- 프레임의 데이터 부분에는 DHCP가 알려준 나의 IP와 DNS가 알려준 목적지 IP 주소가 있는 IP 패킷이 담겨져 있음
- 현재 자신의 IP,MAC 주소, 목적지 IP주소는 알지만 전송해야할 게이트웨이 라우터의 MAC주소는 알지 못함
- 하지만 DHCP를 통해 해당 게이트웨이 라우터의 IP주소는 알고있음, 그 IP주소를 가지고 MAC 주소를 알아내는 과정이 필요함
ARP(address resolution protocol)
- 각 인터페이스에는 ARP table 이라는 것을 가지고 있음
- 테이블에는 IP 주소와 대응하는 MAC 주소가 적혀있음
- 그 테이블에 원하는 정보가 없을 경우 ARP 테이블을 채워넣는 프로토콜이 ARP 프로토콜
- 원하는 정보가 없을 경우 ARP request라는 프레임을 LAN 전체에 브로드케스트로 보냄
- desc 주소는 브로드케스트, source 주소는 자기자신, data부분엔 원하는 IP주소를 담아서 보냄
- IP주소가 상응하는 인터페이스만 응답을 해줌, 이것도 똑같이 브로트케스트로 보내서 source가 맞는 인터페이스만 응답함
- ARP 테이블에는 TTL이라는 컬럼이 있어 해당 정보(캐쉬)의 유효기간을 명시함
ip 패킷이 목적지까지 도달하는 과정:
- A 가 ARP 테이블을 통해 게이트웨이의 mac 주소를 얻음
- csma/cd 방식으로 보냄
- 게이트웨이는 프레임을 받아서 ip패킷을 꺼낸 후 목적지 ip와 포워딩 테이블을 참고하여 보낼 다음 라우터를 정함
- src mac주소는 게이트웨이 보내는쪽 mac 주소로 바꿈(a가 보낸 프레임의 목적지 mac 주소와 다름, 라우터는 받는 인터페이스, 보내는 인터페이스 따로있음)
- 목적지 mac은 또 게이트웨이의 ARP 테이블을 참고해서 얻음
- csma/cd 방식으로 보냄
.....
- 목적지까지 전달
- 목적지까지 도착할때까지 ip 패킷은 변하지 않고 프레임의 src mac 주소랑 desc mac 주소만 바뀜
- src mac 주소랑 desc mac 주소를 알기 위해 포워딩 테이블과 ARP 테이블을 참고
- csma/cd 방식으로 전달
참고
'[CS] > [컴퓨터네트워크]' 카테고리의 다른 글
링크계층 - 무선이동네트워크1 (0) | 2021.07.03 |
---|---|
링크계층 - 스위치 (0) | 2021.07.01 |
링크계층 - MAC protocol (0) | 2021.06.25 |
네트워크계층 - 라우팅 알고리즘 (0) | 2021.06.13 |
네트워크계층 - DHCP, IP fragment (0) | 2021.06.13 |