반응형

UDP 체크섬

UDP 체크섬(UDP Checksum)은 user Datagram Protocol(UDP) 데이터 그램의 오류 검출을 위해 사용되는 메커니즘이다.

UDP는 TCP와는 다르게 데이터 전송시 신뢰성과 오류 복구 기능을 제공하지 않기 때문에, 데이터의 정확성을 보장하기 위해선 추가적인 매커니즘이 필요하다. 이러한 오류 검출을 위해  UDP 체크섬을 사용한다.

 

UDP 체크섬은 UDP 헤더와 데이터를 포함한 UDP 패킷의 오류를 검출 하는데 사용된다. UDP 패킷은 송신측에서 체크섬을 계산해 송신 데이터에 추가하고, 수신측에선 수신한 데이터를 이용해 체크섬을 다시 계산한다. 만약에 수신측에서 계산한 체크섬과 송신측에서 추가한 체크섬이 불일치 할 시 오류가 발생한 것으로 간주해 패킷을 폐기하거나 재전송을 요청한다.

반응형

UDP 체크섬은 오류 검출을 위해 간단한 계산으로 이루어지는데, 송신 데이터의 각 바이트를 16비트 단위로 묶어서 더하고 이를 1의 보수를 취해 체크섬을 생성한다. 수신 측에서도 같은 방식으로 계산해 체크섬을 비교한다.

 

UDP 체크섬은 데이터의 정확성을 검증하는데 물론 도움을 주지만, 검출만을 위한 메커니즘으로 오류를 복구하는 기능은 제공하지 않는다. 

 

GBN이란? 

GBN(Go-back-N)은 네트워크 통신에서 사용되는 오류 복구 기법 중 하나이다. 일방향 데이터 흐름(흐름 제어 방식)을 사용하여 손상된 프레임을 재전송 하는 방법이다. 

 일반적으로 비연결형 프로토콜인 UDP와 함께 사용된다. GBN은 간단하고 효율적인 방법으로 오류복구를 수행한다. 하지만 데이터 전송 순서를 보장하거나 중복된 프레임을 제거하진 않는다. 데이터 전송 순서와 중복성에 대한 보장이 필요한 애플리케이션에는 GBN 대신 SR(Selective Repeat-선택적 재전송)을 사용하는 것이 더 적절하다.

 

GBN의 동작 원리는 다음과 같다.

 1) 송신 측 : 데이터를 프레임 단위로 분할하여 전송하고 각 프레임에 일련번호를 부여한다. 이 일련번호는 송신 측에서 보낸 프레임들의 순서를 나타낸다. 송신 측은 일정 개수의 프레임을 빠르게 전송하고, 이후에 확인 응답(ACK)을 받을 때가지 대기한다.

 2) 수신 측 : 수신 측에선 정상적으로 도착한 프레임은 확인 응답(ACK)를 보내고, 손상된 프레임은 폐기한다. 수신 측은 마지막으로 올바르게 순신한 프레임의 일련번호를 기억하고 이후에 올바른 순서로 수신되지 않은 프레임들을 버퍼링한다.

 3) 손상된 프레임 처리 : 수신 측이 손상된 프레임을 수신했을 경우에 송신 측은 손상된 프레임 다음부터 데이터를 전송하고, 수신 측은 다시 올바른 순서로 프레임들을 수신하기 시작한다.

 

반응형
반응형

요청 세그먼트는 다음 4가지 값을 주목합니다.

 1) 세그먼트 안의 출발지 포트 번호

 2) 출발지 호스트의 IP 주소

 3) 세그먼트 안의 목적지 포트 번호

 4) 목적지 IP주소

새롭게 생선된 연결 소켓은 이 4가지 값에 의해 식별된다.

반응형
반응형

라우팅(Routing) : 컴퓨터 네트워크에서 데이터 패킷을 목적지까지 전송하기 위한 경로를 결정하는 과정

라우터(Router) : 컴퓨터 네트워크에서 데이터 패킷을 전달하는 장비 

세그먼트 : 컴퓨터 네트워크에서 데이터 전송을 위한 작은 조각. 트랜스포트 계층에서 사용되고 주로 TCP 프로토콜에서 데이터를 분할하고 전송하는 단위로 사용됨.

반응형

데이터 그램(Datagram) : 네트워크 통신에서 사용되는 데이터의 단위. 패킷이라고도 불리며, 네트워크를 통해 전송되는 데이터를 작은 단위로 분할하여 보낼 때 사용됨.

역다중화 : 트랜스포트 계층 세그먼트의 데이터를 올바른 소켓으로 전달하는 작업

다중화 : 출발지 호스트에서 소켓으로부터 데이터를 모으고 이에 대한 세그먼트를 생성하기 위해 각 데이터에 헤더정보로 캡슐화하고, 그 세그먼트들을 네트워크 계층으로 전달하는 작업

반응형
반응형

트랜스포트 계층 프로토콜과 네트워크 계층 프로토콜은 인터넷 프로토콜 스택의 두 가지 주요 계층입니다.

두 가지 주요 계층의 가장 큰 차이는 아래와 같습니다.

 

1. 트랜스포트, 네트워크 계층 프로토콜의 가장 큰 차이

- 트랜스포트 계층 프로토콜 : 각기 다른 호스트에서 동작하는 프로세스들 사이의 논리적 통신 제공

- 네트워크 계층 프로토콜 : 호스트들 사이의 논리적 통신을 제공

 

반응형

2. 트랜스포트, 네트워크 계층 프로토콜의 특징

 1) 트랜스포트 계층 프로토콜의 특징

 통신하는 두 종단 장치(end system) 간에 데이터 전송을 관리함. 주요 트랜스포트 계층 프로토콜에는 TCP와 UDP가 있음.

TCP와 UDP의 특징 및 차이 보기 <-

 

 2) 네트워크 계층 프로토콜의 특징

 네트워크 계층은 호스트 간의 데이터 패킷을 라우팅하고, 목적지까지 경로를 결정함. 주요 네트워크 계층 프로토콜로는 IP가 있음.

반응형
반응형

인터넷은 TCP와 UDP라는 두 가지 프로토콜을 가지고 있습니다. 둘 다 인터넷 프로토콜 스택에서 사용되는 전송 계층 프로토콜인데, 데이터를 안정적으로 전송하기 위하여 설계되었습니다. 

 

TCP와 UDP

1. TCP

- 연결 기반 프로토콜. 데이터 전송 전 클라이언트와 서버 간에 가상의 연결을 수립함.

- 신뢰성이 높음. 데이터 패킷이 손실되거나 오류 발생시 재전송을 수행하여 데이터의 정확성을 높임.

- 순서를 보장함. 전송된 데이터 패킷들의 순서가 보장되어 데이터를 수신 측에서 올바른 순서로 조립할 수 있음.

 - 흐름 제어를 수행함. 데이터의 흐름을 조절하여 데이터가 너무 빠르게 전송되어 수신측이 처리하지 못하는 상황을 방지함.

- 높은 오버헤드를 가짐. 연결 설정과 종료, 데이터 정확성을 위한 재전송 등에 추가적인 데이터와 처리 과정이 필요하기 때문에 오버헤드가 큼.

반응형

2. UDP

 - 비연결 기반 프로토콜. 데이터 전송 시 사전에 연결을 수립하지 않고, 데이터를 그냥 보냄.

 - 신뢰성이 낮음. 데이터 손실이나 오류에 대한 처리를 수행하지 않음으로 데이터의 정확성 보장을 하지 않음.

 - 순서를 보장하지 않음. 순서가 보장되지 않으므로 수신 측에서 데이터를 올바른 순서로 조립해야 함.

 - 흐름제어를 하지 않음. 데이터의 흐름을 조절하지 않으므로 과다한 양의 데이터를 보내면 수신 측이 처리하지 못할 수 있음.

 - 낮은 오버헤드를 가짐. 연결설정과 종료가 불필요하고 추가적인 데이터 정확성 처리도 수행하지 않기 때문에 TCP에 비해 오버헤가 작음.

 

3. 결론

TCP신뢰성과 정확성이 중요한 애플리케이션에 적합하고 웹 브라우징, 이메일, 파일 전송 등에 쓰임.

반면 UDP실시간 음성 및 영상 스트리밍, 온라인 게임처럼 신속한 데이터 전송이 필요한 애플리케이션에 적합함.

 

 

반응형
반응형

SNMP는 Simple Network Management Protocol의 약자입니다.

네트워크 장치들을 관리하고 모니터링 하기위해 사용되는 인터넷 프로토콜의 한 종류입니다. 주로 네트워크 관리 시스템(NMS)과 네트워크 장치간에 통신을 수행할 때 사용됩니다.

반응형

SNMP는 에이전트와 네트워크 관리 시스템(NMS)간 상호작용으로 구성됩니다.

에이전트는 모니터링 해야할 장비에 설치돼 해당 장비의 정보를 수집하고, 이것을 NMS에 전송합니다.

NMS는 이런 정보를 수신해 네트워크 상태를 모니터링 하고 필요한 관리 작업을 수행합니다.

SNMP네트워크 장비들에 대한 정보를 모니터링하고, 구성 변경을 관리하고, 장애 진단을 수행하는 등 다양한 관리 작업을 수행하기 위해 개발 됐습니다. 

 

주로 라우터, 스위치, 서버, 프린터 등과 같은 네트워크 장비들이 SNMP를 지원하고 있습니다.

SNMP는 단순하면서 확장 가능한 프로토콜로, 네트워크 관리와 모니터링에 많이 사용됩니다.

 

버전에 따라 보안 기능이 다양하게 개선되고 있습니다. 지금은 SNMPv3가 가장 보안성이 뛰어난 버젼입니다.

반응형

+ Recent posts