만쥬의 개발일기
article thumbnail

네트워크는 크게 호스트와 노드로 이루어진다.

End-to-End 통신에서 각 끝단을 호스트라고 하며, 그 사이 거쳐가는 모든 Path들을 노드라고 부르게 되는데, 네트워크적 관점에서 Node와 Path를 몇 번 거치느냐에 따라 속도에 차이가 생겨 전달시간과 망 점유율을 최소화하는 알고리즘이 중요하다. (BFS,Dijkstra 등)

호스트(Host)

인터넷 연결은 End to End 패킷 전달을 목표로하는데, 각 End는 개인의 단말 혹은 서버이고, 이를 Host 라고 부른다.

패킷의 입장에서는 발송자를 Source, 수신자를 Destination이라고 부른다.

Host 이외의 Node

End to End 통신을 단일 매체로 구현하는 것은 불가능에 가깝다.

패킷을 전달하기 위해선 패킷들을 잠시 저장하고 방향을 정해 보내줄 중간 거점이 필요한데, 이 역할을 하는 장비들이 스위치, 브릿지, 라우터 등이고 이를 Node라고 한다.

  1. 스위치 : 위에서 말한 대로 CPU, Buffer를 넣어 스위칭 해주는 장비로 연결된 장비들의 MAC 주소를 이용해 프레임을 필터링, 특정 장비에만 전달해준다.
  2. 브릿지 : 마찬가지의 역할이나, 하드웨어가 아닌 소프트웨어 적으로 해당 역할을 수행한다.덕분에 속도는 조금 더 느리지만, 전달할 수 있는 포트 수는 많아진다.
  3. 라우터 :하나의 네트워크에서 다른 네트워크로 패킷을 전달하기 위해 사용하는 장비로,위의 스위치, 브릿지는 같은 네트워크 내에서만 작동하는 것과는 대비된다. 충돌 도메인과 브로드캐스트 도메인을 분리해서 작동하는 방식으로, 세그먼트 연결 작업 뿐 아니라 도메인 분리 작업도 라우팅 속도를 결정짓는다.
  4. 게이트웨이 : 장비가 아니라 개념적인 네트워크 간 연결 통로다.대부분의 경우에는 라우터를 사용하지만,꼭 라우터는 아니고 스위치나 브릿지가 게이트웨이 역할을 하는 경우도 있고,장비가 아니라 소프트웨어 적으로 게이트웨이를 구현할 수도 있다.즉, 장비 종류가 아닌 "역할"에 대한 이름이다.

reference

profile

만쥬의 개발일기

@KangManJoo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!