본문 바로가기
컴퓨터과학[4-1]/정보톰신망

정보 통신망 - [제6장] TCP/IP

by boolean 2017. 2. 13.
728x90

정보 통신망 - [제6장] TCP/IP

개요

TCP/IP Internet Protocol Suite라고 불리는 TCP/IP는 서로 연결된 각종 네트워크 간에 통

신 프로토콜로서 사용된다. TCP/IP는 단일 프로토콜이 아니고 여러 프로토콜들로 구성된

프로토콜 집합으로, 인터네트워킹 기술을 기반으로 현재 사실상의 산업 표준 프로토콜로 사

용되고 있다. TCP/IP 프로토콜 계층은 4계층으로 구성되어 있으며, 각각은 데이터링크 계

층, 네트워크 계층, 전송 계층, 응용 계층이다. 이 장에서는 TCP/IP의 기본 구조와 특징, 각

계층의 역할에 대하여 살펴본다.

6.1 TCP/IP의 개념

■ TCP/IP 기본 구조 : 데이터링크 계층, 네트워크 계층, 전송 계층, 응용 계층

- 데이터링크 계층 : 네트워크 인터페이스 계층

① 디바이스 드라이버 및 인터페이스 카드는 통신과 관련된 하드웨어 부분을 처리

- 네트워크 계층 : 인터넷 계층

① 네트워크 상에서 패킷의 이동을 처리

② 네트워크 계층 프로토콜에는 IP(Internet Protocol), ICMP(Internet Control Message

Protocol), IGMP(Internet Group Management Protocol) 등이 있음.

- 전송 계층 : 응용 계층을 위하여 호스트 간의 데이터 전송을 제공

① TCP(Transmission Control Protocol) 및 UDP(User Datagram Protocol) 트랜스포토 계

층 프로토콜이 있음.

② TCP는 호스트 간의 신뢰성 있는 흐름을 제공하지만, UDP는 간단한 메시지 전송에 유리

하며 신뢰성 있는 흐름을 보장하지는 않음.

- 응용 계층 : 공통적인 TCP/IP 응용 프로그램들을 제공

① FTP, SMTP, Telnet, DNS, ping 등의 응용 프로그램

■ TCP/IP에서 주소

- 인터넷 상에서 모든 호스트들은 다른 호스트들과 일 대 일 또는 일 대 다로 통신하기 위

하여 각 호스트들을 식별해 주는 주소가 필요함.

- 세 가지 주소 : 물리(링크)주소, 인터넷(IP) 주소, 포트 주소로 구성

① 물리주소 : 하나의 네트워크(주로 LAN) 내에서 호스트를 식별하는 물리적 하드웨어 주

소로서 네트워크 인터페이스 주소

② 인터넷 주소 : 서로 다른 네트워크 간에 호스트를 식별하는 논리주소

③ 포트 주소 : 프로세스를 식별하는 포트 번호

■ 인터넷 주소

- 32비트(4바이트)로 구성

- 네트워크 식별자(netid)와 호스트 식별자(hostid)로 이루어짐.

- 클래스화된 인터넷 주소 체계 : 첫 바이트의 처음 4개의 비트로 클래스를 결정

① 클래스 A : 216(65,536)개 이상의 호스트 수를 갖는 네트워크에 할당. 가장 왼쪽 비트는

‘0’이며, 네트워크 식별자(netid)로 7비트가 주어지고 호스트 식별자로 24비트가 주어짐.

② 클래스 B : 28(256)개 이상이고 216개 이하인 호스트 수를 갖는 네트워크에 할당. 가장

왼쪽의 2비트가 ‘10’으로 시작되며, 네트워크 식별자로 14비트가 주어지고 호스트 식별자로

16비트가 주어짐.

③ 클래스 C : 28(256)개 이하인 호스트 수를 갖는 네트워크에 할당. 가장 왼쪽 3비트가

‘110’으로 시작되며, 네트워크 식별자로 21비트가 주어지고 호스트 식별자로 8비트가 주어

짐.

④ 클래스 D : 멀티캐스트(multicast)를 위해 사용하는 클래스로 동일한 통신 그룹에 속한

호스트들에게 동시에 패킷을 전송하는 통신방식에 사용되는 주소. 가장 왼쪽 4비트가

‘1110’으로 시작됨.

⑤ 클래스 E : 특별한 용도를 위해 예약되어 있으며, 가장 왼쪽 4비트가 ‘1111’로 시작됨.

■ 사설 네트워크 주소

- 특정 네트워크 혹은 기관 내에서만 사용하고자 할 때 사용

- 특정 네트워크 내에서만 유효하며 외부에서는 유효하지 않음.

■ 서브네팅

- 하나의 네트워크 주소를 가지고 물리적인 위치에 의해 서브네트워크(서브넷, subnet)라

는 작은 네트워크로 나누는 방법

- 서브넷 마스크 : 서브넷 식별자와 호스트 식별자의 경계를 나누기 위해 도입

■ 캡슐화 : 전송을 위해 계층별로 필요한 정보를 추가하는 과정

- 각 계층별 PDU의 이름과 추가 정보

① TCP 세그먼트(4계층 PDU) : 데이터의 그룹화

② IP 데이터그램(3계층 PDU) : 출발지/목적지 주소의 추가(논리주소인 IP 주소)

③ 이더넷 프레임(2계층 PDU) : 출발지/목적지 주소의 추가(물리주소인 MAC 주소)

④ 비트(1계층 PDU) : 이진 전송(0과 1)

6.2 IP

■ IP의 특징

- 호스트의 주소지정(addressing)과 라우팅을 통한 패킷 전달(packet delivery)

- 비연결 서비스 : 각각의 패킷을 독립적으로 전송하기 때문에 하나의 메시지에 속하는 패

킷들이 같은 목적지로 전달됨에도 불구하고 서로 다른 경로를 통하여 전달될 수 있음.

- 최선(best-effort)의 데이터 전송 서비스 제공

■ 데이터그램

- IP 계층의 패킷

- 가변길이의 패킷으로 헤더(20∼60바이트)와 데이터 부분으로 구성

- 데이터그램의 형식

① 버전(version) : IP의 버전을 식별번호로 나타냄.

② 헤더 길이(header length) : 옵션을 포함한 데이터그램 헤더의 전체 길이

③ 서비스 유형(type of service) : 데이터그램의 서비스 품질(Quality of Service, QoS)

⦁우선순위(처음 3비트) : 라우터에 혼잡이 발생한 경우에 사용

⦁TOS 비트(다음 4비트) : 자신에게 필요한 서비스 품질의 요구조건(비용 최소, 신뢰성 최

대, 처리량 최대, 지연 최소)

④ 전체 길이(total length) : 데이터그램의 전체 길이

⑤ 식별자(identification) : 단편화를 위해 사용되는 필드로, 호스트가 전송하는 각 데이터

그램을 식별하는 필드

⑥ 플래그(flag) : 단편화를 위해 사용되는 필드로, 단편화 가능 여부와 마지막 단편인지를

나타냄.

⑦ 단편 오프셋(fragment offset) : 단편 후 데이터가 단편 이전의 원래 데이터 내에서의

상대적 시작 위치(8바이트 단위로 계산)

⑧ TTL(Time To Live) : 데이터그램이 폐기되기 전에 패킷이 활동할 수 있는 기간

⑨ 프로토콜(protocol) : 데이터그램과 관련된 상위 계층 프로토콜을 식별하는 필드

⑩ 헤더 검사합(header checksum): 전송오류를 검사하는 필드(헤더만을 대상으로 함)

⑪ 발신지 및 목적지 인터넷 주소(source and destination Internet address) : 발신지 및

목적지 호스트를 식별하는 주소 필드

⑫ 옵션(option) 및 패딩(padding) : 라우팅 및 보안 등과 같은 제어 기능에 사용(IP 헤더

에 40바이트까지 확장)


■ IP 단편화

- 송신자로부터 수신자에 이르기까지 중간 네트워크들은 전송 프레임의 크기에 상한선이

있기 때문에 중간 네트워크를 경유할 때마다 데이터그램이 절단 혹은 단편화

(fragmentation)될 수 있음.

- MTU(Maximum Transfer Unit) : 최대 전송 크기

■ 라우팅

- 송신자가 IP 데이터그램들을 수신자에게 전송하기 위하여 각 IP 데이터그램이 목적지 호

스트까지 진행하면서 경유할 경로를 결정하는 것

- 송신자, 수신자 및 송신자와 수신자 호스트의 경로상에 있는 모든 라우터들이 IP 데이터

그램 전달에 관여

- 라우팅 테이블 : 라우팅 테이블의 정보를 이용하여 수신한 데이터그램의 다음 라우터를

결정한 후 전송

① 마스크(mask) : 목적지 네트워크 주소나 서브네트워크 주소를 얻기 위해 목적지 IP 주

소에 적용할 마스크를 정의

② 목적지 IP 주소(destination address) : 호스트 주소 또는 네트워크 주소를 명시

③ 네트워크에 직접 연결된 다음홉(next-hop) 라우터의 IP 주소 : 최종 목적지까지 데이터

그램을 보내기 위해 경유하는 중간 라우터를 의미

④ 플래그(flag)

⦁첫 번째 플래그 : 목적지 주소가 호스트 주소인지 라우터 주소인지를 나타냄.

⦁두 번째 플래그 : 다음홉 라우터가 다음홉 라우터인지 혹은 직접 연결된 인터페이스인지

를 나타냄.

⑤ 참조횟수(reference count) : 현재 시간에 이 경로를 사용하고 있는 사용자 수

⑥ 사용(use) : 라우터로부터 해당하는 목적지로 전달된 패킷의 수

⑦ 인터페이스(interface) : 인터페이스 이름

- 홉(hop-by-hop) 방식 : 송신자 호스트와 수신자 호스트까지 완전한 경로를 알지 못하

기 때문에 IP 라우팅은 단지 데이터그램이 전송되는 다음홉 라우터 주소를 이용하여 전송

6.3 UDP

■ UDP(User Datagram Protocol : 사용자 데이터그램 프로토콜)의 특징

- 비연결성과 비신뢰적 특징을 갖는 전송 계층의 전송 프로토콜

① 전송한 메시지가 최종 목적지에 수신되었는지를 확인하지 않음.

② 메시지의 도착순서를 재조정하지 않음.

③ 호스트 사이에 정보흐름의 속도를 제어하는 피드백 메커니즘도 제공하지 않음.

④ UDP 메시지는 손실될 수 있고 중복되어 수신될 수 있으며, 순서가 뒤바뀌어 도착할 수

도 있음.

- 간단한 메시지를 송수신하는 데 유리한 프로토콜

- 검사합(checksum) 기능 : 비연결형 IP 전달 서비스에 최소한의 신뢰성을 위해 옵션으로

제공


■ UDP 사용자 데이터그램 : UDP 헤더와 UDP 데이터 부분으로 구성

- 발신지 포트(source port) : UDP 데이터그램을 생성한 발신자 호스트에서 UDP 전송 서

비스를 사용하는 프로세스를 식별하는 데 사용

- 목적지 포트(destination port) : UDP 데이터그램을 수신하는 목적지 호스트의 프로세스

를 식별하는 데 사용

- 길이(length) : UDP 데이터그램 헤더와 데이터 필드를 포함하는 UDP 데이터그램의 전

체 길이

- 검사합(checksum) : 옵션으로 UDP 데이터그램의 헤더와 데이터 부분의 오류를 검사

■ UDP 가짜 헤더

- UDP 데이터그램이 정확하게 목적지에 도착했는지를 이중으로 인증하는 것

- 검사합을 계산하기 위해 12바이트의 가짜 헤더(pseudo-header)를 UDP 데이터그램에

덧붙임.

- 데이터그램이 16비트의 배수가 되도록 ‘0’으로 패딩한 후 전체 UDP 데이터그램의 검사

합을 계산

- 발신지 IP 주소와 목적지 IP 주소, 프로토콜(protocol), UDP 길이(UDP length) 필드로

구성

6.4 TCP

■ TCP의 특징

- 신뢰성이 보장되는 데이터 전송 서비스

- 프로세스 간 통신을 위한 프로토콜로서 포트 번호를 이용

- 연결-지향

① 송신자 호스트의 프로세스와 목적지 호스트의 프로세스 사이에 연결이라는 논리적인 관

계가 설정

② TCP 사용자가 데이터를 전송하기 전에 발신지와 목적지 간에 가상경로를 설정하고 데

이터 전송이 끝나면 이를 해제

③ 전이중(full-duplex) 데이터 전송 서비스를 제공

- 흐름제어를 위해 슬라이딩 윈도우 프로토콜을 이용

- 오류제어를 위해 확인 응답 패킷, 시간-초과, 그리고 재전송 방식을 이용

- 수신자에게 전송할 데이터를 전송에 알맞은 최대 세그먼트 크기(Maximum Segment

Size, MSS)로 절단[TCP가 절단하여 전송하는 데이터를 세그먼트(segment)라고 함]

■ TCP 세그먼트 형식

- 20에서 60바이트의 헤더와 응용 프로그램의 데이터로 구성

① 발신지 포트(source port) : 발신지측 TCP 사용자 프로세스를 식별

② 목적지 포트(destination port) : 세그먼트를 수신하는 목적지 호스트의 TCP 사용자 프

로세스를 식별

③ 순서번호(sequence number)

⦁세그먼트 데이터 필드의 첫 번째 데이터 바이트의 순서번호

⦁TCP는 신뢰성 있는 연결을 보장하기 위하여 전달되는 각 바이트마다 번호를 부여

⦁순서 번호는 목적지 TCP에게 세그먼트의 첫 번째 바이트가 이 순서번호에 해당하는 바

이트라는 것을 알려줌.

⦁TCP의 연결설정 단계에서 난수 발생기를 이용하여 초기 순서번호(Initial Sequence

Number, ISN) 생성

④ 응답번호(acknowledgment number)

⦁세그먼트의 발신지 노드가 상대편 노드로부터 수신하고자 하는 바이트의 번호를 정의

⦁수신자가 송신자에게 응답하기 위해 다음에 수신하기를 기대하는 순서번호를 응답번호로

사용

⑤ 헤더 길이(header length): TCP 헤더의 길이

⑥ 예약(reserved) : 향후 사용될 수 있는 서비스를 위해 남겨 놓은 필드

⑦ 제어(control) : 프로토콜의 동작을 제어하는 데 사용되는 비트 단위의 플래그

⦁URG : 긴급 포인터(urgent pointer) 필드가 유효함을 나타냄.

⦁ACK : 응답번호가 유효함을 나타냄.

⦁PSH : 수신자는 가능한 빨리 현재 세그먼트의 데이터를 상위 계층에 전달해야 함.

⦁RST : 연결을 재설정(reset)함.

⦁SYN : 연결설정 요구나 연결을 초기화하기 위해 순서번호를 동기화시킴.

⦁FIN : 데이터 전송 종료나 송신자가 보내는 마지막 데이터임을 나타냄.

⑧ 윈도우 크기(window size) : 수신자가 흐름제어를 위해 명시하는 바이트 단위의 윈도우

크기

⑨ 검사합(checksum) : 전체 세그먼트의 오류를 검사하기 위해 사용

⑩ 긴급 포인터(urgent pointer) : URG 플래그가 ‘1’로 설정되면, 긴급 데이터의 마지막 바

이트의 순서번호는 이 포인터 값과 순서번호 값의 합으로 계산

⑪ 옵션(option) : 송신자가 수신하기를 원하는 세그먼트의 최대 크기(MSS), 윈도우 크기

를 증가시키기 위한 값, 타임스탬프 등의 옵션 정보를 나타내기 위해 사용


■ TCP 연결설정과정 : 3-방향 핸드셰이크(handshake) 방식을 사용

- 연결 요청자(클라이언트)는 SYN 세그먼트 1을 서버로 전송

- 서버는 SYN 세그먼트 1에 대한 응답으로 서버의 ISN 값을 포함한 세그먼트 2를 전송

- 클라이언트가 SYN 세그먼트 2에 대한 응답 세그먼트 3을 전송


■ TCP 연결종료과정

- 클라이언트는 FIN 세그먼트를 서버에게 전송

- 서버는 응용 계층 사용자에게 EOF를 전달하고 클라이언트에게 연결종료에 대해 응답한

후, 다른 방향에 대한 연결종료를 위해 FIN 세그먼트를 클라이언트에게 전송

- 클라이언트가 서버의 연결종료요청에 응답


6.5 주소변환

■ ARP(Address Resolution Protocol)

- IP 주소를 물리주소로 매핑해 주는 프로토콜

- 브로드캐스트 기능을 활용하여 IP 주소를 물리주소로 매핑

- 주소 매핑 테이블을 유지하지 않고 동적 바인딩 방식으로 이러한 매핑 기능을 수행

■ ARP 패킷 형식

- 이더넷 목적지 및 발신지 주소(Ethernet destination & source address) : ARP 메시지

전송 시에 사용되는 목적지 및 발신지 이더넷 주소(물리주소)

- 프레임 유형(frame type) : ARP 메시지의 프레임 유형은 0x0806임.

- 하드웨어 유형(hardware type) : 하드웨어 주소 유형(이더넷 주소인 경우 1임)

- 프로토콜 유형(protocol type) : 프로토콜 주소 유형

- 하드웨어 및 프로토콜 크기(hardware & protocol size) : 하드웨어 및 프로토콜의 주소

크기

- 오퍼레이션(operation) : ARP 요청은 1, ARP 응답은 2, RARP 요청은 3, RARP 응답은

4임.

- 대상 이더넷 및 IP 주소(target Ethernet & IP address) : 대상 호스트의 이더넷 주소

및 IP 주소

■ RARP(Reverse Address Resolution Protocol)

- 물리주소만을 알고 있는 호스트가 자신의 IP 주소를 찾기 위해 사용하는 프로토콜

- 브로드캐스트 기능을 활용

- RARP 패킷 형식 : ARP 패킷 형식과 거의 일치한다. 차이점은 프레임 유형이 0x8035이

고, 오퍼레이션 필드가 RARP 요청인 경우 3, RARP 응답인 경우 4값을 가짐.

6.6 ICMP

■ ICMP의 특징

- 오류 또는 제어 메시지를 제공하는 프로토콜

- 라우터는 네트워크 혼잡과 같은 비정상적인 상태로 인해 데이터그램을 전송하는 데 문제

가 있으면 발신지 호스트에게 문제가 발생했다는 사실을 ICMP를 통하여 통지

⦁최종 목적지 호스트까지 경로 상의 혼잡, 하드웨어 문제, 또는 TTL값의 종료 등의 문제

가 발생하는 경우

■ ICMP 메시지 형식

- 8바이트의 헤더와 가변 길이의 데이터 부분으로 구성

① 유형 및 코드(type & code) : 유형 필드는 ICMP 메시지를 식별하며, 코드 필드는 메시

지의 유형에 관한 추가 정보를 제공

② 검사합(checksum) : 전체 ICMP 메시지에 대한 전송오류를 검사하는 필드

③ ICMP 메세지 : echo, timestamp 등과 같은 ICMP 메시지에서 사용되는 필드

④ 옵션 데이터(optional data) : ICMP 메시지 유형에 따라서 IP 데이터그램의 첫 64비트

및 전송 계층 프로토콜의 헤더를 포함

■ ICMP 메시지 유형 : 오류보고 메시지와 질의 메시지로 구성

- 오류보고 메시지

① 발신지 억제(source quench) : 데이터그램이 라우터와 호스트의 처리능력을 초과할 정

도로 빨리 도착하여 포화상태에 이르게 될 때 사용

② 시간초과(time exceeded) : 라우터는 TTL 필드의 값이 0으로 감소될 때 사용

③ 목적지 도달 불가(destination unreachable) : 라우터는 데이터그램이 최종 목적지에 전

달될 수 없다고 판단될 때 사용

④ 재지정(redirect) : 다른 라우터를 통하여 보다 좋은 경로로 IP 패킷을 전달할 수 있을

때 사용

- 질의 메시지

① 에코 요청(echo request) 또는 에코 응답(echo reply) : 두 호스트 사이에 통신이 가능

한지 확인하는 데 사용

② 주소 마스크 요청(address mask request) 또는 주소 마스크 응답(address mask

request) : 주소 마스크를 얻기 위해 사용

6.7 IGMP

■ IGMP(Internet Group Management Protocol)의 특징

- 멀티캐스트(하나의 그룹에 속한 호스트들에게 메시지를 전송)를 위해 사용되는 프로토콜

- IGMP 질의 및 보고에 의해 멀티캐스트 그룹 가입 및 탈퇴가 이루어짐.

■ IGMP 메시지 형식

- 유형(type) : 메시지 유형(general special query, membership report, leave report)

- 최대 응답시간(maximum response time) : 질의에 응답해야 하는 시간

- 검사합(checksum) : 전체 IGMP 메시지에 대해서 전송오류를 검사하는 필드

- 그룹 주소(group address) : 클래스 D의 IP 주소

6.8 DHCP

■ DHCP(Dynamic Host Configuration Protocol)의 특징

- 네트워크 관리자들이 조직 내의 네트워크상에서 IP 주소를 중앙에서 관리하고 개별 클라

이언트들에게 자동으로 할당해 주는 프로토콜

- DHCP는 호스트 이동성 제공 등의 다양한 기능을 제공하며 주소할당에 관해서 네트워크

관리자의 작업을 단순화시킴.

- DHCP 클라이언트, DHCP 서버, BOOTP/DHCP 릴레이 에이전트로 구성

① DHCP 클라이언트 : 프로그램을 동작시키며 인터넷에 접근하기 위하여 DHCP 서버에게

IP 주소를 요청

② DHCP 서버 : 네트워크 상의 DHCP 및 BOOTP 클라이언트에게 주소 및 구성 정보를 제

③ BOOTP/DHCP 중계 에이전트 : 특정 호스트 혹은 라우터가 사용될 수 있으며, 다른 서

브넷 상의 DHCP 클라이언트 및 서버 간에 정보전달의 중계기 역할

■ IP 주소 관리

- 호스트 테이블

① 호스트 테이블은 호스트 이름에 대한 주소 매핑 기능과 주어진 주소에 대한 이름 매핑

기능을 제공

② 장점 : 중앙집중형 구조로서 호스트 테이블 형식이 간단

③ 단점 : 호스트의 급속한 증가와 변화에 빨리 대응하기 힘들어 매핑 정보의 일관성 유지

가 어렵고 계층적 구조가 아니므로 중복 정보를 갖고 있음.

- DNS(Domain Name System)

① 네임 서버(name server)가 특정한 네트워크 영역을 위한 정보를 가지고 있으며, 자신이

갖고 있지 않은 정보를 다른 네임 서버에 요청

② 장점 : 계층적 구조의 특징과 분산관리의 특성

③ 단점 : 네임 서버의 데이터가 복잡하여 수작업에 의한 오류가 발생할 수 있고, 분산관리

되기 때문에 새로운 영역을 위하여 다른 네임 서버의 내용을 참고해야 함.

- BOOTP(Bootstrap Protocol)

① X 터미널 등과 같이 하드디스크를 갖지 않은 장치의 주소 및 설정 정보를 자동적으로

할당·관리하는 프로토콜

② 동적(dynamic)으로 주소를 할당하는 방식

③ 네트워크 관리자는 하드웨어 주소 및 이에 해당하는 고정 IP 주소를 위한 테이블을 관리

■ DHCP 메시지 형식

① Op 코드 : 요청(request)은 1이고 응답(response)은 2로 설정

② 하드웨어 유형과 하드웨어 주소 길이

③ 홉 개수

④ 트랜잭션 식별자 : 요청 및 요구 메시지를 위한 식별자

⑤ 경과시간(초단위) : 클라이언트가 주소를 할당받은 시간을 설정

⑥ 클라이언트 IP 주소 : 클라이언트가 자신의 IP 주소를 모르면 0으로 설정

⑦ 상대방 IP 주소 : 클라이언트 IP 주소가 0이면 서버가 IP 주소를 기록

⑧ 서버 IP 주소 : 서버의 IP 주소를 기록

⑨ 게이트웨이 IP 주소 : 프락시 서버를 사용할 경우 프락시 서버는 게이트웨이(gateway)

IP 주소를 기록

⑩ 클라이언트 하드웨어 주소 : 클라이언트는 의무적으로 설정하며 이더넷 헤더의 MAC 주

소와 동일

⑪ 서브 이름과 부트 파일명 : 클라이언트가 0으로 설정하면 임의 서버가, 또는 특정 서버

로 지정하면 지정된 서버가 응답 시 부트 파일의 실제 경로명을 제공

⑫ 옵션 : BOOTP 및 DHCP의 확장을 위하여 사용

객관식 문제

1. TCP/IP 계층은 4가지로 구별할 수 있다. TCP/IP 계층이 아닌 것은?

① 데이터링크 계층 ② 네트워크 계층 ③ 표현 계층 ④ 응용 계층

2. TCP/IP 계층에서 패킷 라우팅 기능을 제공하는 계층은?

① 표현 계층 ② 응용 계층 ③ 네트워크 계층 ④ 데이터링크 계층

3. TCP/IP의 응용 계층에서 TCP를 이용하는 응용프로그램과 거리가 먼 것은?

① ICMP ② ping

③ DNS ④ FTP

4. TCP/IP에서 호스트나 라우터를 식별하기 위해 사용하는 주소는?

① 프로토콜 주소 ② IP 주소 ③ 포트 번호 ④ ①, ②, ③ 모두

5. IP 주소의 특징과 관련 없는 것은?

① MAC 주소 ② 네트워크 식별자(netid)와 호스트(hostid) 식별자

③ 32비트(4바이트)로 구성 ④ A, B, C, D, E 클래스로 구성

6. 캡슐화에 관한 설명은?

① 동일한 통신 그룹에 속한 호스트들에게 패킷을 전송하는 통신방식

② 프로토콜의 모듈화

③ 네트워크 식별자 및 호스트 식별자 경계를 식별

④ SDU에 PCI를 추가하는 작업

7. IP의 주요업무와 알맞게 짝지어진 것은?

① 호스트의 주소지정(addressing), 패킷 전달(packet delivery)

② 종단 간(end-to-end)에 전송되는 메시지의 안정성, 흐름제어

③ 호스트의 주소지정(addressing), 흐름제어

④ 패킷 전달(packet delivery), 흐름제어

8. IP 내의 데이터를 절단하는 이유는?

① 전송속도 ② 송신자의 요구 ③ 보안 ④ MTU

9. 라우팅 테이블이 제공하는 정보가 아닌 것은?

① 참조횟수 ② 전송자 IP 주소

③ 다음홉(next-hop) 라우터의 IP 주소 ④ 마스크

10. IP 라우팅에 관한 설명이 아닌 것은?

① 데이터그램이 전송되지 않으면 미도달 오류 메시지를 응용 프로그램에게 전달한다.

② 목적지 네트워크에 해당하는 엔트리가 라우팅 테이블에 없으면 디폴트(default) 라우터

가 다음홉 라우터가 된다.

③ IP는 송신자 호스트와 수신자 호스트까지 완전한 경로를 유지한다.

④ 라우팅 테이블 정보를 이용하여 수신한 데이터그램의 다음 목적지를 결정한다.

11. UDP에 대한 설명으로 알맞지 않은 것은?

① 메시지 도착 순서를 재조정한다.

② 비연결성과 비신뢰적 특징을 갖는 전송 계층의 프로토콜이다.

③ 비연결형 IP 전달 서비스에 최소한의 신뢰성을 위한 오류제어 메커니즘으로 검사합

(checksum) 기능을 옵션으로 제공한다.

④ TCP와 비교하여 데이터의 전송속도가 빠르고 응용 프로그램이 간단해지는 장점이 있다.

12. TCP와 관련이 없는 것은?

① 슬라이딩 윈도우를 사용한 흐름제어 ② 전송 계층 프로토콜

③ 전이중 방식의 TCP 연결 제공 ④ 신뢰성 있는 비연결형 데이터 전송 서비스

13. ARP와 관련이 없는 것은?

① IP 주소를 물리주소로 매핑한다.

② ARP 요청 메시지는 브로드캐스트로 전송된다.

③ 모든 호스트는 ARP 프로토콜을 이용하여 다른 호스트의 물리주소를 동적으로 얻을 수

있다.

④ 디스크가 없는 호스트는 ARP를 사용하여 IP 주소를 얻는다.

14. 호스트의 물리주소는 알지만 IP 주소를 모르는 경우 사용하는 프로토콜은?

① ARP ② RARP ③ DNS ④ DHCP

15. ICMP에 관한 설명이 아닌 것은?

① 응용 계층에서는 ICMP 기능을 이용할 수 없다.

② 모든 ICMP 메시지의 필드는 유형 및 코드, 검사합, ICMP 메시지, 옵션 데이터로 구성

이 되어 있다.

③ ICMP 메시지 유형은 오류보고 메시지와 질의 메시지로 구성되어 있다.

④ 오류 또는 제어 메시지를 제공한다.

16. IGMP에 관한 설명이 아닌 것은?

① 그룹주소는 클래스D의 IP 주소를 사용한다.

② 멀티캐스트 그룹에 가입한 프로세스만이 멀티캐스트 메시지를 전송할 수 있다.

③ IGMP 질의 및 보고에 의해 멀티캐스트 그룹 가입 및 탈퇴가 가능하다.

④ 인터넷에서 멀티캐스트를 위해 사용되는 프로토콜이다.

17. DHCP에 관한 설명이 아닌 것은?

① IP 주소 재사용이 가능하다.

② 다른 네트워크로 이동 시에 재부팅할 필요가 없다.

③ IP 주소가 없는 경우에도 인터넷에 접속 가능하다.

④ 중앙에서 IP 주소를 관리하고 개별 클라이언트들에게 자동으로 할당한다.

심화학습문제

18. 데이터그램이 폐기되기 전 인터넷에 활동할 수 있는 기간을 나타내는 IP 데이터그램의

필드는?

① 단편 오프셋 ② TTL ③ 식별자 ④ 플래그

19. 다음 중 멀티캐스트 주소에 해당되는 IP 주소는?

① 14.25.124.18 ② 212.32.50.250 ③ 163.152.39.189 ④ 226.12.15.90

20. UDP 가짜 헤더의 목적은?

① 수신자 인증 ② 검사합 제공 ③ 오류제어 ④ ①, ②, ③ 모두

21. DHCP 네트워크 구성이 아닌 것은?

① BOOTP 서버 ② DHCP 클라이언트

③ DHCP 서버 ④ BOOTP 중계 에이전트

해설 및 정답

1. TCP/IP 계층은 데이터링크 계층, 네트워크 계층, 전송 계층, 응용 계층으로 나뉨[교재

6.1.2 참조].

정답 ③

2. 네트워크 계층은 패킷 라우팅 기능을 제공하며 IP, ICMP, IGMP 등의 프로토콜을 제공

함[교재 6.1.2 참조].

정답 ③

3. TCP/IP 프로토콜의 응용 계층에서 TCP를 이용하는 응용프로그램은 FTP, SMTP,

Telnet, DNS, ping 등의 응용프로그램이 있음[교재 6.1.2 (2) 참조].

정답 ①

4. TCP/IP 프로토콜은 물리(링크) 주소, 인터넷(IP) 주소, 포트 주소를 사용함. 포트 주소

는 프로세스를 식별하기 위해서 사용됨[교재 6.1.3 참조].

정답 ②

5. MAC 주소는 물리적 하드웨어 주소(네트워크 인터페이스 주소)를 나타냄[교재 6.1.3 참

조].

정답 ①

6. 캡슐화는 SDU에 PCI를 추가하는 작업임[교재 6.1.4 참조].

정답 ④

7. IP의 주요업무는 호스트의 주소지정(addressing), 패킷 전달(packet delivery)이고 종단

간(end-to-end)에 전송되는 메시지의 안정성, 흐름제어는 책임지지 않음[교재 6.2.1 참

조].

정답 ①

8. 송신자로부터 수신자에 이르기까지 중간 네트워크들은 전송 프레임의 크기에 상한선이

있기 때문에 중간 네트워크를 경유할 때마다 데이터그램의 절단 혹은 단편화

(fragmentation)가 필요함. 최대 전송의 제한을 MTU(Maximum Transfer Unit)라고 함[교

재 6.2.4 참조].

정답 ④

9. 라우팅 테이블은 마스크, 목적지 IP 주소, 네트워크에 직접 연결된 다음홉 라우터의 IP

주소, 플래그, 참조횟수 등을 포함함[교재 6.2.5 그림 6.12 참조]

정답 ②

10. IP 라우팅은 홉(hop-by-hop) 방식으로 이루어짐. IP는 송신자 호스트와 수신자 호스

트까지 완전한 경로를 알지 못하기 때문에, IP 라우팅은 단지 데이터그램이 전송되는 다음

홉 라우터 주소만을 제공함[교재 6.2.5 (3)참조].

정답 ③

11. 메시지 도착 순서를 재조정하지 않음. 비연결성과 비신뢰적 특징을 갖는 전송 계층의

프로토콜임. 비연결형 IP 전달 서비스에 최소한의 신뢰성을 위한 오류제어 메커니즘으로 검

사합(checksum) 기능을 옵션으로 제공함. TCP와 비교하여 데이터의 전송속도가 빠르고 응

용 프로그램이 간단해지는 장점이 있음[교재 6.3.1 참조].

정답 ①

12. TCP는 신뢰성 있는 연결형(connection-oriented) 데이터 전송 서비스를 제공함[교재

6.4 참조].

정답 ④

13. 디스크가 없는 호스트는 자신의 물리주소로만 통신이 가능하기 때문에 RARP를 이용하

여 자신의 물리주소와 매핑되는 IP 주소를 로컬 네트워크 상의 모든 IP 주소를 알고 있는

특정 장치로부터 얻어냄[교재 6.5 참조].

정답 ④

14. RARP를 이용하여 자신의 물리주소와 매핑되는 IP 주소를 알아냄[교재 6.5 참조].

정답 ②

15. ping 프로그램은 ICMP를 직접 이용하는 응용 프로그램임[교재 6.1.2, 6.6 참조].

정답 ①

16. 호스트의 프로세스는 멀티캐스트 메시지를 수신하기 위해 멀티캐스트 그룹에 가입해야

함[교재 6.7 참조].

정답 ②

17. IP 주소는 서로 다른 네트워크 간에 호스트를 식별하는데 사용된다. 인터넷 상에서 호

스트들이 서로 통신하기 위해서는 각 호스트를 식별해주는 인터넷 주소가 필요하다[교재

6.1.3, 6.8 참조].

정답 ③

18. TTL(Time To Live) : 데이터그램이 폐기되기 전에 패킷이 활동할 수 있는 기간을 나

타내는 필드임. 이 필드의 값은 실제 처리시간과 관계 없이 방문되는 라우터에 의해 하나씩

감소됨. 이 필드의 값이 ‘0’이 되면 데이터그램은 폐기됨. 따라서, 이 필드는 데이터그램이

전송 중에 거쳐야 하는 최대 라우터의 수를 나타내며, 대략 두 호스트 사이에 위치한 라우

터 수의 두 배로 설정함[교재 6.2.3 참조].

정답 ②

19. 클래스 D는 멀티캐스트 주소임. 인터넷 주소범위는 224.0.0.0∼239.255.255.255임[교

재 6.1.3 참조].

정답 ④

20. UDP는 검사합을 계산하기 위해 12바이트의 가짜 헤더(pseudo-header)를 UDP 데이터

그램에 덧붙임. 가짜 헤더는 UDP 데이터그램이 정확하게 목적지에 도착했는지를 인증하는

것을 목적으로 함[교재 6.3.3 참조].

정답 ②

21. DHCP는 DHCP 클라이언트, DHCP 서버, BOOTP/DHCP 중계 에이전트로 구성됨[교재

6.8.3 참조].

정답 ①

댓글