Packet 과 Router는 무엇일까?

박승우·2024년 8월 7일

자 83번째 키워드인 'Packet 과 Router' 를 알아 볼 것이다.

이전 키워드에서 프로토콜과 통신 관련되서 알아 보았기에 데이터 통신에 관련 하여 알아 보았다.

Packet이 뭔가요?

패킷(packet)은 데이터 통신에서 사용되는 기본 단위라고 한다.

컴퓨터 네트워크에서 데이터를 효율적으로 전송하기 위해 큰 데이터를 작은 조각으로 나누고,
이 조각들을 패킷이라 부른다.

각 패킷은 전송되어야 할 데이터의 일부분과 그 데이터를 목적지로 전달하기 위한 여러 가지 정보를 포함한다.

Packet의 구조

헤더(Header): 패킷의 앞부분으로, 제어 정보와 메타데이터가 포함되어 있다.

Packet - Header

  • 송신자와 수신자의 IP 주소: 데이터가 어디에서 어디로 가는지를 나타낸다.

  • 프로토콜 정보: 패킷이 어떤 프로토콜(TCP, UDP 등)을 사용하는지 명시한다.

  • 패킷 번호: 데이터가 여러 패킷으로 나누어질 때 각 패킷의 순서를 나타낸다.

  • 오류 검출 코드: 데이터 전송 중에 발생할 수 있는 오류를 검출하기 위한 정보이다.

페이로드(Payload): 실제 전송되는 데이터 부분으로, 사용자가 보낸 메시지, 파일의 일부 이며, 패킷의 크기나 네트워크 조건에 따라 이 부분의 크기가 결정된다.

트레일러(Trailer): 선택적인 부분으로, 데이터 무결성을 확인하기 위한 추가 정보가 포함될 수 있다.

Packet - 전송 과정

  • 분할: 큰 데이터를 전송하기 전에 작은 패킷으로 나누어진다.

  • 전송: 각 패킷은 독립적으로 네트워크를 통해 목적지로 전송된다.

  • 재조립: 목적지에 도착한 패킷들은 원래의 순서대로 재조립되어 원본 데이터를 복원한다.

  • 오류 검출 및 수정: 전송 중에 발생한 오류는 헤더나 트레일러에 포함된 오류 검출 정보를 통해 확인되고 수정된다.

Router가 뭔가요?

라우터(Router)는 컴퓨터 네트워크에서 패킷을 전송하는 장치라고 한다.

라우터는 네트워크 간의 데이터 패킷을 목적지로 전달하는 역할을 하며, 각 패킷이 가장 효율적으로 전달될 수 있는 경로를 결정하게 된다.

Router 기능 수행

  1. 패킷 포워딩(Packet Forwarding): 라우터는 들어오는 패킷을 분석하고, 목적지 IP 주소를 기반으로 패킷을 적절한 출력 포트로 전달한다.

  2. 라우팅(Route Determination): 라우터는 네트워크 내의 최적 경로를 결정하기 위해 라우팅 테이블을 사용한다. 라우팅 테이블에는 각 네트워크에 대한 경로 정보가 저장되어 있다. 이 정보는 정적(static)으로 설정되거나 동적(dynamic)으로 라우팅 프로토콜을 통해 갱신된다.

  3. 라우팅 프로토콜 사용: 라우터는 네트워크 간의 경로 정보를 교환하기 위해 다양한 라우팅 프로토콜을 사용한다.

    대표적인 라우팅 프로토콜로는 OSPF(Open Shortest Path First), BGP(Border Gateway Protocol), RIP(Routing Information Protocol) 등이 있다.

  4. 네트워크 주소 변환(Network Address Translation, NAT): 라우터는 사설 IP 주소와 공인 IP 주소 간의 변환을 수행할 수 있다. 이는 내부 네트워크의 사설 IP 주소를 외부 네트워크에 공개하지 않고, 하나의 공인 IP 주소로 여러 장치가 인터넷에 접속할 수 있게 한다.

  5. 방화벽 기능: 일부 라우터는 기본적인 방화벽 기능을 포함하여 네트워크 보안을 강화할 수 있다. 이를 통해 불필요한 트래픽이나 잠재적인 위협을 차단할 수 있다.

  6. 품질 보장(QoS, Quality of Service): 라우터는 다양한 유형의 트래픽에 대해 우선순위를 설정하여 네트워크 성능을 최적화할 수 있다. 예를 들어, 실시간 스트리밍이나 VoIP(Voice over IP) 트래픽을 우선 처리하여 지연을 최소화할 수 있다.

두 사이의 연관성

데이터 전송 과정

패킷: 네트워크를 통해 데이터를 전송할 때 사용되는 기본 단위이다. 큰 데이터를 작은 조각으로 나눈 후 각 패킷에 목적지 정보와 같은 메타데이터를 포함시켜 전송한다.

라우터: 네트워크 내에서 패킷을 목적지까지 전달하는 역할을 한다. 라우터는 패킷의 목적지 주소를 읽고, 이를 기반으로 최적의 경로를 결정하여 패킷을 다음 네트워크 장치로 전달한다.

경로 결정과 전달

패킷: 각 패킷은 목적지에 도달하기 위해 여러 네트워크 장치를 거치게 된다. 이 과정에서 패킷들은 서로 다른 경로를 통해 전송될 수 있으며, 각 패킷은 독립적으로 처리된다.

라우터: 라우터는 패킷의 목적지 IP 주소를 분석하여, 해당 패킷을 다음에 어느 경로로 보낼지 결정한다. 라우터는 라우팅 테이블과 라우팅 프로토콜을 사용하여 네트워크 상태를 파악하고, 가장 효율적인 경로를 선택한다.

네트워크 효율성 및 안정성

패킷: 데이터 전송을 효율적으로 하기 위해 큰 데이터를 작은 패킷으로 나눔으로써 네트워크 혼잡을 줄이고, 데이터 손실 시 일부 패킷만 재전송하면 되므로 전체 데이터의 재전송을 피할 수 있다.

라우터: 라우터는 패킷을 최적의 경로로 전달하여 네트워크 혼잡을 줄이고, 패킷이 빠르고 안정적으로 목적지에 도달할 수 있도록 한다. 또한, 장애가 발생할 경우 대체 경로를 찾아 패킷을 전달할 수 있어 네트워크의 신뢰성을 높인다.

오류 검출 및 수정

패킷: 각 패킷에는 오류 검출을 위한 정보가 포함되어 있어, 데이터 전송 중에 발생할 수 있는 오류를 검출하고 수정할 수 있다.

라우터: 라우터는 패킷을 전송하면서 오류가 있는 패킷을 감지하고, 필요한 경우 재전송을 요청하거나 다른 경로를 통해 패킷을 재전송한다.

통신 프로토콜

패킷: 다양한 통신 프로토콜(TCP, UDP 등)을 통해 전송됩니다. 각 프로토콜은 패킷의 형식과 전송 방식을 정의한다.
라우터: 라우터는 이러한 프로토콜을 이해하고 처리할 수 있으며, 특정 프로토콜에 따라 패킷을 올바르게 전달한다.

profile
게임을 좋아하는 사람 입니다!

0개의 댓글