2025/02 75

[Chapter 9] TCP 프로토콜(TCP 프로토콜)

TCP는 IP 프로토콜 위에서 연결형 서비스를 지원하는 전송 계층 프로토콜로, 인터넷 환경에서 기본적으로 사용한다.TCP에서 제공하는 주요 기능연결형 서비스를 제공한다.전이중 방식의 양방향 가상 회선을 제공한다.신뢰성 있는 데이터 전송을 보장한다.TCP/IP 구조인터넷에서 네트워크 계층의 기능을 제공하는 프로토콜은 IP이며, IP프로토콜 위에서 실행되는 전송 계층의 프로토콜은 서비스의 유형에 따라 두 종류로 구분한다.TCP는 연결형 서비스를 지원하는 프로토콜이고, UDP는 비연결형 서비스를 지원하는 프로토콜이다. 전송 계층 프로토콜은 운영 체제 내부 기능으로 구현된다. 따라서 이 서비스를 사용 하려면 상위 계층에서 시스템 콜이라는 프로그램 호출 방식을 이용해야 한다.전송 계층 프로토콜인 TCP와 UDP ..

CS/Network 2025.02.16

[Chapter 9] TCP 프로토콜(전송 계층의 주요 기능)

전송 계층 프로토콜은 오류 제어, 흐름 제어, 데이터 순서화 등의 기능 면에서 데이터 링크 계층과 특징이 유사하다. 그러나 데이터 링크 계층이 물리적인 선로로 직접 연결된 두 물리적 호스트(컴퓨터나 라우터)사이의 데이터 전송을 담당하는 반면, 전송 계층은 네트워크 끝단에 위치하는 통신 주체가 중간의 논리적인 선로(라우터로 연결된 컴퓨터 네트워크)를 통해 데이터를 주고 받는다.데이터 링크 계층은 단순히 물리적인 선로를 통해 데이터를 직접 전달하기 때문에 네트워크 계층의 중개 기능이 필요 없다. 하지만 전송 계층은 중간에 위치한 논리적 네트워크의 중개 기능을 이용해 전송 기능을 수행한다. 전송 계층에서는 네트워크에서 제공하는 다양한 자원(데이터 링크 계층의 기능, 잠재적 기억 장치에 의한 데이터의 저장과 그..

CS/Network 2025.02.14

[Chapter 8] 네트워크 계층(기타 네트워크 계층 프로토콜)

IP프로토콜은 응용 계층에서 생성된 사용자 데이터를 전송하기 위해 사용된다. 인터넷 환경에서 데이터 전송 과정이 올바르게 이루어지려면 전송 프로토콜 외에도 다양한 제어 프로토콜이 필요하다.제어 프로토콜의 대표적인 예는 데이터 전송 과정에서 오류를 제거하는 ICMP이다. 인터넷에서 사용자 데이터는 IP프로토콜에 의해 전송되지만, 제어 메시지는 ICMP에 의해 전송된다. 이외에도 IP주소와 MAC 주소 사이의 변환을 담당하는 ARP/RARP 제어 프로토콜이 있으며, 모두 인터넷 동작을 위해 꼭 필요하다.ARP 프로토콜네트워크 환경에서 임의의 호스트가 다른 호스트에 데이터를 전송하려면 수신 호스트의 IP주소 뿐 아니라, MAC 주소도 알아야 한다. 수신 호스트의 IP주소는 보통 응용 프로그램 사용자가 프로그램..

CS/Network 2025.02.14

[Chapter 8] 네트워크 계층(이동 IP 프로토콜)

터널링 원리이동 호스트가 자신의 고유 주소를 유지하면서 인터넷 서비스를 받으려면 계속 이동하는 송수신 호스트 간의 데이터 라우팅 처리가 가장 중요하다.상이한 전송 수단이동 IP 프로토콜을 이해하려면 먼저 터널링 원리를 알아야 한다.ex) 사람이 육지와 섬을 거쳐 이동하는 경우를 예로 들 수 있다.버스와 배는 모두 네트워크 계층을 지원하는 IP 프로토콜로 버스와 배에 실려서 이동하는 홍길동은 전송 데이터로 볼 수 있다. 문제점은 홍길동 스스로 IP 프로토콜을 교체하는 작업이 추가로 이루어져야 한다.터널링 방식IP 프로토콜을 교체하는 방식보다 문제를 간단히 해결하는 방법은 터널링 기능을 이용하는 것이다. 터널링 방식을 사용하면 홍길동이 출발지에서 목적지까지 버스만 이용하므로, 네트워크 최종 사용자인 홍길동은..

CS/Network 2025.02.14

[Chapter 8] 네트워크 계층(IPv6 헤더 구조)

32비트의 주소 공간을 지원하는 현재의 IP 프로토콜은 이론상으로 최대 2^32개의 호스트를 수용할 수 있다. 인터넷이 급성장함에 따라 이 정도의 주소 크기만으로는 거의 한계점에 이른 상황이다. 호스트의 주소 공간을 대폭 확장한 IPv6(IP 버전 6)은 기존 인터넷 환경에서 사용하는 IPv4(IP 버전 4)를 대체하기 위한 차세대 프로토콜이다.IPv6의 주요 변경사항주소 공간 확장송신 호스트와 수신 호스트의 주소를 표시하는 공간이 32비트에서 128비트로 확장되었다. IPv6를 이용한 인터넷 환경에서는 이론적으로 호스트를 최대 2^128개까지 지원하여 무한으로 확장되는 인터넷 접속자를 모두 수용할 수 있다. 또한 개인이 무선으로 연결하는 유비쿼터스 장비가 기하급수적으로 보급되는 환경에도 쉽게 대처할 수..

CS/Network 2025.02.14

[Chapter 7] IP 프로토콜(IP 프로토콜)

인터넷 환경에서 네트워크 계층의 데이터 전송 프로토콜로 이용되는 IP는 호스트 주소 표기, 패킷 분할에 관한 기능ㅇ르 지원하지만, 단대단 형식의 오류 제어나 흐름 제어 기능을 제공하지 않는다.IP프로토콜로서 라우터 간의 수신 패킷을 중계할 때는 Best Effort라는 원칙에 따라 전송하는데, 이 방식은 전송 패킷이 수신 호스트에 100% 도착하는 것을 보장하지 않는다. 따라서 IP프로토콜에서 제공하지 않는 전송 오류 문제를 상위 계층에서 고려해야 한다.비 연결형 서비스를 제공한다.패킷을 분할/병합하는 기능을 수행하기도 한다.데이터 체크섬은 제공하지 않고, 헤더 체크섬만 제공한다.Best Effort 원칙에 따른 전송 기능을 제공한다.IP헤더 구조헤더 필드를 연관된 종류 별로 묶어 설명DZ/ECN DS와..

CS/Network 2025.02.14

[Chapter 7] IP 프로토콜(라우팅 프로토콜)

인터넷에는 수 많은 호스트가 연결되므로 관리해야 할 라우팅 정보도 매우 많다. 그러다보니 라우팅 정보를 적절히 관리하여 효과저긍로 라우팅 하는 작업이 생각보다 쉽지 않다.간단한 라우팅 프로토콜네트워크에서 의미하는 거리의 기준은 다양하지만, 라우팅과 관련해 가장 보편적으로 이용하는 기준은 전송 경로의 중간에 위치하는 라우터의 개수, 즉 홉의 수로 판단하는 것이다.최단 경로 라우팅최단경로 라우팅 방식은 패킷이 목적지에 도달할 때까지 거치는 라우터의 수가 최소화 될 수 있도록 경로를 선택한다. 장점은 바교적 간단한 형식으로 쉽게 적용할 수 있다는 것인데, 전송 패킷이 목적지까지 도착한는 여러 경로 중 가장 짧은 경로를 선택한다.호스트 a에서 호스트 g까지 도달하는 경로는 여러개이지만, 가장 짧은 경로는 라우터..

CS/Network 2025.02.13

[Chapter 7] IP 프로토콜(연결형 서비스와 비연결형 서비스)

네트워크 계층의 기본 기능은 송수신 호스트 사이의 패킷 전달 경로를 전달하는 라우팅이다. 라우팅 과정에서 일어나는 문제도 네트워크 계층에서 처리한다. 이와 관련된 대표적인 기능이 네트워크 특정 지역에 트래픽이 몰리는 현상을 다루는 혼잡 제어와 라우터 사이의 패킷 중개 과정에서 다루는 패킷의 분할과 병합이다.라우팅네트워크의 구성 형태에 대한 정보는 라우팅 테이블이라는 기억 장소에 보관된다.이 정보를 이용해 패킷이 목적지까지 도달하기 위한 경로를 선택한다.송수신 호스트 사이의 패킷 전달 경로를 선택하는 과정을 라우팅이라 하고, 라우팅 테이블 정보는 네트워크 관리자나 네트워크 자신의 판단에 의해 계속 변경될 수 있다.혼잡 제어네트워크에 패킷 수가 과도하게 증가하는 현상을 혼잡이라 하고, 혼잡 현상을 예방하거나..

CS/Network 2025.02.13

[Chapter 6] 데이터 링크 계층(HDLC 프로토콜)

HDLC 프로토콜ISO에서 IBM SNA의 데이터 링크 프로토콜로 사용되는 SDLC를 HDLC로 발전시켰다. CCTTT에서는 HDLC를 다시 수정하여 X.25에서 사용할 수 있도록 LAP으로 발전시켰으며, 이는 다시 LAPB로 향상되었다. 이들 프로토콜은 모두 같은 뿌리에서 시작해 기본 특성이 유사하다.HDLC 프로토콜은 컴퓨터가 일대일 혹은 일대다로 연결된 환경에서 데이터의 송수신 기능을 제공한다. 데이터 통신을 위해 연결된 호스트들은 주국과 종국으로 구분되고, 다시 이들의 기능을 모두 지닌 혼합국으로 정의될 수 있다. 주국에서 전송되는 메시지를 명령이라 정의하며, 이에 대한 종국의 회신을 응답이라 한다.프레임 구조HDLC 프레임의 구조로, 상단의 숫자는 비트 수 이다. 프레임의 좌우에 위치한 0111..

CS/Network 2025.02.13

[Chapter 6] 데이터 링크 계층(슬라이딩 윈도우 프로토콜)

약식 프로토콜에서는 프레임 전송이 한쪽 방향으로만 이루어진다고 가정했지만, 실제 통신 환경에서는 대부분 양방향으로 이루어진다. 슬라이딩 윈도우 프로토콜은 두 호스트 간의 프레임 전송을 위한 일반적인 통신 프로토콜로, 오류 제어와 흐름 제어 기능을 함께 지원한다.슬라이딩 윈도우 프로토콜의 원리는 현재 대부분 통신 프로토콜에서 사용하는 방식으로 기본 절차를 따른다.정보 프레임을 전송하는 송신 호스트는 보내려는 데이터 뿐 아니라 프레임의 순서 번호, 오류 검출 코드 등을 프레임에 표기한 후에 정해진 순서 번호에 따라 순차적으로 송신한다.정보 프레임을 받은 수신 호스트는 해당 프레임의 순서 번호에 근거하며 송신 호스트에 응답 프레임을 회신해야 한다. 일반적으로 응답 프레임의 내용에 포함되는 순서 번호는 정상적으..

CS/Network 2025.02.12