피터전 랜스위칭 : CSMA/CD 와 Full/Half Duplex

이번엔 네트워크의 기본중 하나인 CSMA/CD와 풀듀플렉스, 하프듀플렉스에 대해서 이야기해보겠습니다


사실 이 두가지는 필드에서도 놓치기 쉬운 많큼 사소하지만 기본적이고 또 그래서 중요한 내용입니다.


일반적으로 PC통신은 Ethernet 통신을 하죠.


Ethernet통신이 뭐냐? 깊게 들어가자면 이야기가 길어지므로 L2통신이라고만 하고 넘어가겠습니다


이더넷이 프레임을 전송할 때 풀 듀플렉스 모드와 하프 듀플렉스모드로 데이터를 송수신합니다


이렇게 데이터를 주고받을 때 이더넷통신의 특징인 CSMA/CD에 대해 이야기를 하게되는데요


CSMA/CD가 무어냐!?


우선 풀네임부터 봐야겠네요


carrier sense multiple access with collision detection이 바로 CSMA/CD의 풀네임입니다


조금 끊어서 의미를 알아보겠습니다


carrier sense


multiple access


collision detection


이렇게 세가지를 합쳐놓은것입니다






그림을 보고 이야기를 하겠습니다


4대의 PC가 하나의 허브에 물려있네요


여기서 1번 컴퓨터가 데이터를 전송할려는 순간을 가정해 보겠습니다


1번 PC가 데이터를 보낼 때 4대의 연결된 컴퓨터 중에서 누군가가 먼저 선점해서 라인을 사용하고 있는지 검사를 하게됩니다


왜 검사를 하냐고요? 누가 먼저 쓰고있는데 데이터를 싫어서 보내면 충돌이 나거든요


이렇게 검사하는것을 캐리어 샌싱(carrier sensing)이라고 합니다


1번 PC뿐 아니라 라인에 연결된 이더넷 장비는 언제라도 캐리어 센싱 후 데이터를 전송할 수 있습니다


이것을 multiple access라고 합니다


이더넷은 복수개의 장비가 동시에 데이터를 전송 할 수 있고 이렇게 되면 충돌이 일어난다고 위에서 이야기를 했죠


그래서 데이터를 전송 후에 충돌이 났는지 아닌지 검사를 하게되는데 이것을 collision detection이라고 합니다


이 세가지 특징을 모아서 CSMA/CD라고 하며 이 과정은 인간이 인지하기에는 아주 빠른시간에 일어나기 때문에 사용자들은 이 과정을 눈으로 확인 할 수는 없습니다


충돌이 나게되면 정해진 알고리즘에 따라 재전송을 하게 되고 최대 15번까지 재전송을 시도합니다. 15번 모두 실패하면 전송을 포기하고 오류메세지를 송출하겠죠?


위 그림과 같이 충돌이 일어날 수 있는 하나의 네트워크 영역을 collision domain이라고 부릅니다.


















다음엔 듀플렉스에 대해서 이야기해보겠습니다


데이터 통신에는 송신과 수신이 있습니다. Rx/Tx 들어보셨죠?


이더넷 통신도 마찬가집니다


먼저 RJ45에 대해서 잠깐 볼까요?














위 사진에 보이는게 RJ45라는 것인데요 많이 보셨죠? 여러분 PC에 꼽혀있는 랜케이블 끝부분의 커넥터입니다


랜 케이블은 사실 뜯어보면 그림처럼 8가닥이 있습니다. 같은색끼리 4쌍으로 연결되어 있죠


이렇게 쌍으로 되어있는 이유가 위에서 언급한 것 처럼 송/수신 라인이 다르기 때문입니다


RJ45에 대한 자세한 이야기는 다음 기회에 하겠습니다


그럼 Full Duplex와 Half Duplex는 무엇이 다르냐면


간단합니다. Full Duplex는 송신과 수신을 동시에 할 수 있는 기술이고


Half Duplex는 이름 그대로 송신중엔 수신을 할 수 없고 반대로 수신중엔 송신을 할 수 없는 기술입니다


당연히 Full Duplex가 더 좋은거죠.


10M 라인이라면 송신 10M, 수신 10M 이렇게 따로 대역폭사용이 가능한 거랍니다








사실 우리나라의 대부분의 엔지니어들은 짧은 교육과정에 취업에 맞춰진 커리큘럼으로 양산되는 경우가 많습니다


물론 이들은 당장 인력으로 투입되어 사회에서 활약이 가능한 분들이지만 필드에서 VLAN설정하고 ACL설정은 할 수 있는데


기본적인 지식이 부족하여 high class로 올라갈 수록 바닥이 드러나는 경우가 적지 않죠


저도 남말할 처지는 못됩니다만, 눈에 보이지 않는 프레임의 구조라던가.. TCP통신의 알고리즘 등.. 이런것들이 머리에 박혀있어야 트러블슈팅에서도 힘이 발휘된다고 생각합니다


제가 아는것이 많지 않아서 많은 이야기는 할 수 없지만 좋은 책과 강사분들이 많이 있으니 (인력의 코리아 아닙니까 ㅋㅋ)


네트워크에 관심이 많으시거나 종사를 원하시는 인재가 계시다면 꼭 체계적인 학습과 연습 또 반복이 필요하다고 말씀드리고 싶습니다

댓글

이 블로그의 인기 게시물

ping 일반오류 (General failure)를 고쳐보자

Windows 10. 공유폴더 쉽게 삭제하기 (feat. CMD)

Piolink TiFront Switch password recovery (파이오링크 스위치 비밀번호 초기화)