네트워크 - Ethernet
컴퓨터 네트워크를 공부하면서 정리를 한 내용들 입니다.
-참고 K-mooc 부산 대학교 유영환 교수님 : 컴퓨터 네트워크 강의
링크 레이어의 기술 중 가장 대표적인 이더넷(ethernet)에 대해 알아봅니다.
Ethernet
이더넷은 Metcalfe
라는 사람에 의해 개발되어서,
가장 널리 퍼진 첫 번째 기술입니다.
Metcalfe
는 처음에 이더넷 카드를 개발을 해서,
기술 자체도 간단하게 만들고, 아주 싼 가격으로 공급을 했습니다.
그렇게 사용자의 수를 늘린 다음 표준화 시켜 시장을 장악했습니다.
다른 기술에 비해서 성능의 범위도 10Mbps
~ 10Gbps
까지
다양한 성능을 가지는 이더넷 기술들을 제공합니다.
Ethernet Frame
이더넷 프레임은 그림과 같이 생겼는데요.
payload 부분에는 3계층의 데이터그램
이 들어갑니다.
payload
는 46
~ 1500 byte
까지가 범위이므로
이더넷 프레임은 최소 64 byte
~ 최대 1518 byte
가 될 수 있습니다.
그 다음 프레임 사이즈에 딱 계산 되지는 않지만
하나의 프레임을 보내기 위해서는
앞의 8 byte
의 preamble
이라는 것을 먼저 보내야 합니다.
그래서 preamble
은 7 byte
의 10101010
,
그리고 나서 10101011
을 한 번 보냄으로써
sender
와 receriver
간의 synchronization을 합니다.
Header에는 Destination MAC 주소
와 Source MAC 주소
가
각각 6 byte
씩 차지하고 있고, type
또는 length
가 2 byte
가 있습니다.
Type
에는 어떠한 형태의 프로토콜 데이터그램을 담고 있느냐는 것
과
data length
관련한 내용이 있습니다.
FCS(frame check sequence)에는 CRC 코드
를 담아서
프레임에 에러가 있는지 없는지를 검사 합니다.
그래서 에러가 발견이 되면 프레임은 drop
됩니다.
그런데 이더넷에서는 재전송을 요구 한다거나 하지 않고
프레임을 drop
시키는 것으로 끝나기 때문에 reliable한 서비스는 아닙니다.
Physical Topology
초기
Metcalfe가 이더넷을 개발 할 때부터 90년대 중반
까지
bus 형태
로 이더넷 카드들이 물려져 있는 topology를 사용했습니다.
최근
에는 bus 형태가 아니라
하나의 스위치 허브에 노드들이 연결 되는 star 형식
의 topology가 사용됩니다.
Switch : Enable Multiple Simultaneous Transmissions
스위치를 쓰게 되면 bus 형태로 되어 있을 때 보다 충돌을 없앨 수 있습니다.
허브 스위치에는 각각의 포트가 있고
각 포트마다 직접적인 링크로 호스트들이 연결되어 있습니다.
그래서 각각의 링크는 다른 노드들과 공유 하지 않습니다.
그렇기 때문에 충돌이 일어나지 않게됩니다.
스위치의 역할을 간단히 살펴보면,
-
각 호스트들이 보내는 패킷들을 일단 버퍼링 합니다.
-
목적지 주소를 살펴 봅니다.
-
해당 목적지 주소에 맞는 포트로 프레임을 내보냅니다.
Example
`A`가 `A’`으로 전송 하고 `B`가 `B’`으로 전송하는 것을 가정 했을 때
`A`가 `A’`으로 전송 하는 것과 `B`가 `B’`으로 전송 하는 것이 동시에 일어난다 하더라도
스위치에서 각각 1번 링크로 들어온 데이터와
2번 링크를 통해서 들어온 B의 데이터를 각각 알아서 따로 버퍼링 해 놓았다가
그것을 4번과 5번 링크로 나누어서 보내기 때문에 충돌이 일어나지 않게 됩니다.
그래서 bus topology하고 비교 했을 때 보다 충돌이 없어짐으로 인해서
전체적인 효율을 높일 수 있게 됩니다.