일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 취약점진단
- bandit 문제풀이
- 티스토리챌린지
- 보안
- 혼자공부하는네트워크
- overthewire 문제
- 네트워크문제
- 혼공네트
- 함수와 디버깅
- AWS
- Dreamhack
- 오블완
- overthewire bandit level 0
- bandit 비밀번호
- 데이터와 로직
- 포인터와 배열
- web hacking
- kbdinteractiveauthentication
- 해킹
- sk루키즈
- 공부기록
- overthewire bandit 문제
- 객체지향
- bandit level
- 정보보안
- bandit level 11 -> level 12 문제풀이
- overthewire bandit 문제풀이
- 네트워크정리
- sk shieldus rookies 23기
- 네트워크이론정리
- Today
- Total
아임노드
Chap 04. 전송 계층 본문
Q1 : 전송 계층의 존재 이유와 직결되는 IP의 한계의 두 가지 중요한 특징이 있다.
그것은 무엇인가?
A : 1. IP는 신뢰할 수 없는 비신뢰성 프로토콜 - IP 프로토콜이 패킷이 수신지까지 제대로 전송되었다는 보장을 하지 않는 특징
(다른 말로 최선형 전달(best effirt delivert)이라고 한다;
최선은 다해 보겠지만, 전송 결과에 대해서는 어떠한 보장도 하지 않겠다.)
2. IP는 연결을 수립하는 과정이 없는 비연결형 프로토콜 - 송수신 호스트 간에 사전 연결 수립 작업을 거치지 않는 특징
(그저 수신지를 향해 패킷을 보내기만 할 뿐)
Q2 : IP가 왜 어떠한 보장도 없이 신뢰할 수 없는, 비연결 통신을 하는가?
A : 주요한 이유는 성능 때문이다.
Q3 : IP의 한계를 보완하기 위해 전송 계층에서 사용되는 대표적인 전송 프로토콜은?
A : TCP
Q4 : 두 호스트가 정보를 주고받기 전에 마치 가상의 회선을 설정하듯이
연결을 수립하는 전송 계층의 프로토콜은 무엇인가?
(송수신하는 동안 연결을 유지하고 송수신이 끝나면 연결을 종료한다.)
A : TCP
Q5 : 전송 계층에서 패킷이 수신지까지 올바른 순서대로 확실히 전달되는 것을 보장하기 위해
다양한 기능을 제공하는 프로토콜은 무엇인가?
A : TCP
Q6 : 비교적 높은 성능을 위해 신뢰할 수 없는 통신, 비연결 통신을 가능하게 하는
전송 계층의 프로토콜은 무엇인가?
A : UDP
Q7 : 패킷에 특정 애플리케이션을 식별할 수 있는 정보가 포함되어야 해당 패킷이 어떤 애플리케이션에
전달해야 하는지 알 수 있다. 이러한 정보를 무엇이라고 하는가?
A : 포트(port)
Q8 : 포트 번호는 일반적으로 어떤 형식으로 IP 주소와 함께 표기되는가?
A : [IP 주소 : 포트 번호]
Q9 : 포트 기반의 NAT인 '이것'은 NAT 테이블에 변환될 IP 주소 쌍과 더불어 포트 번호도 함께 기록된다.
이것은 무엇인가?
A : NAPT(Network Address Port Translation)
Q10 : 포트 포워딩(port forwarding)이란 무엇인가?
A : 네트워크 내 특정 호스트에 IP 주소와 포트 번호를 미리 할당하고,
해당 'IP 주소:포트 번호' 로써 해당 호스트에게 패킷을 전달하는 기능
Q11 : 포트 포워딩을 주로 사용하는 경우를 말하여라.
A : 주로 네트워크 외부에서 -> 네트워크 내부로 통신을 시작할 때.
네트워크 내부의 서버를 외부에서 접속할 수 있도록 접속 정보를 공개하기 위해 자주 사용.
Q12 : IP의 신뢰할 수 없는 전송 특성과 비연결형 전송 특성을 보완하기 위한
네트워크 계층의 프로토콜은 무엇인가? 또 그것의 정의를 말하여라.
A : ICMP(Internet Control Message Protocol) - IP 패킷의 전송 과정에 대한 피드백 메시지를
얻기 위해 사용하는 프로토콜이다.
Q13 : TCP로 전송할 수 있는 최대 페이로드 크기를 무엇이라고 하는가?
(여기서 이것은 TCP 헤더 크기는 제외한다_MTU와 대조적)
A : MSS(Maximum Segment Size)
Q14 : TCP 세그먼트 헤더 구조에서 이 필드는 플래그 비트(flag bits)라고도 부르며
현재 세그먼트에 대한 부가 정보를 나타낸다.
기본적으로 8비트로 구성되어 각 자리의 비트는 각기 다른 의미를 가지고 있다.
세 개의 제어 비트를 말하여라.
A : ACK - 세그먼트의 승인을 나타내기 위한 비트
SYN - 연결을 수립하기 위한 비트
FIN - 연결을 종료하기 위한 비트
Q15 : TCP 통신 단계를 크게 세 단계로 나워 말하여라.
A : 연결 수립 > 데이터 송수신 > 연결 종료
Q16 : TCP 데이터 송수신 과정에서 제공하는 기능은 무엇인가?
A : 재전송을 통한 오류 제어, 흐름 제어, 혼잡 제어
Q17 : TCP 연결 수립 과정은 무엇을 통해 이루어지는가?
A : 쓰리 웨이 핸드셰이크(three-way handshake)
Q18 : 아래 그림은 쓰리웨이 핸드셰이크를 통해 연결을 수립한 뒤 데이터 송수신이 끝났을 때
TCP가 연결을 종료하는 과정을 그린 것이다. 각 빈칸에 들어갈 말은?
A : 1. FIN
2. ACK
3. FIN
4. ACK
(송수신 호스트가 각자 한 번씩 FIN과 ACK를 주고받으며 이루어진다.)
Q19 : TCP는 어떤 상태이며 각 상태에 대한 의미는?
(1) CLOSED, (2) LISTEN
A : 상태 - 연결이 수립되지 않은 상태
(1) - 아무런 연결이 없는 상태
(2) - 일종의 연결 대기 상태
Q20 : UDP 데이터그램의 네 가지 필드는 무엇인가?
A : 송신지 포트, 수신지 포트, UDP 길이, 체크섬 필드
Q21 : UDP 데이터그램의 체크섬 필드에서 하는 역할은 무엇인가?
A : 데이터그램 전송 과정에서 오류가 발생했는지 검사하기 위한 필드이다.
Q22 : RTT는 무엇인가?
A : Round Trip Time의 약자로, 송신 호스트가 세그먼트를 전송한 뒤
그에 대한 답변을 받는 데까지 걸리는 시간이다.
Q23 : TCP의 재전송 기법으로 문제가 생긴 메시지를 재전송함으로써
신뢰성을 확보하는 방식을 무엇이라고 하는가?
A : ARQ(Automatic Repeat reQuest, 자동 재전송 요구)
Q24 : 파이프라이닝(pipelining)이란 무엇인가?
A : 연속해서 메시지를 전송할 수 있는 기술
Q25 : 윈도우(window),란 무엇인가?
A : 송신 호스트가 파이프라이닝할 수 있는 최대량을 의미한다.
(이것은 윈도우 크기만큼 확인 응답없이 한 번에 전송 가능하다는 의미이기도 하다.)
Q26 : 만일 수신 호스트가 첫 번째 세그먼트를 올바르게 수신했다면
수신 윈도우는 오른쪽으로 한 칸 이동 > 두 번째 세그먼트를 올바르게 수신했다면
수신 윈도우는 다시 한 번 오른쪽으로 한 칸 이동한다.
파이프라이닝 과정에서 송수신 윈도우는 점차 오른쪽으로 미끄러지듯 움직이는데
이러한 TCP의 흐름 제어를 무엇이라고 하는가?
A : 슬라이딩 윈도우(sliding window)
'[책] 혼공 시리즈 > 혼공 네트워크' 카테고리의 다른 글
Chap 05. 응용 계층 (0) | 2024.11.18 |
---|---|
Chap 03. 네트워크 계층 (0) | 2024.11.17 |
Chap 02. 물리 계층과 데이터 링크 계층 (0) | 2024.11.17 |
Chap 01. 컴퓨터 네트워크 시작하기 (0) | 2024.11.17 |