슬라이드 1

Similar documents
슬라이드 제목 없음

Microsoft Word doc

TCP.IP.ppt

Microsoft PowerPoint _TCP_IP

Microsoft PowerPoint - 4. 스캐닝-2.ppt [호환 모드]

Microsoft PowerPoint - Chap09_TCP와 UDP [호환 모드]

Subnet Address Internet Network G Network Network class B networ

PEL_PPT

Microsoft PowerPoint - 20_TransportProtocols-1.ppt

슬라이드 1

그룹웨어와 XXXXX 제목 예제

The Pocket Guide to TCP/IP Sockets: C Version

2009년 상반기 사업계획

Microsoft Word - src.doc

슬라이드 제목 없음

전송계층프로토콜 TCP(Transmission Control Protocol) 전송계층에서동작하는연결지향형 (connectionoriented) 프로토콜 데이터의흐름을관리하고, 데이터가정확한지검증하며통신 쓰리웨이핸드셰이킹 (three-way handshaking) 을통

IP 주소란? 네트워크상에존재하는컴퓨터들을구분하고, 서로를인식하기위해사용하는특수한번호. 32-bit 체계의 IPv4 와, 128-bit 체계의 IPv6 가있다. About IPv4 32-bit 의길이로이루어지는 IPv4 는 1 byte (= 8-bit) 씩 4 개로나누

bn2019_2

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >

The Pocket Guide to TCP/IP Sockets: C Version

Network seminar.key

SMB_ICMP_UDP(huichang).PDF

[ 네트워크 1] 3 주차 1 차시. IPv4 주소클래스 3 주차 1 차시 IPv4 주소클래스 학습목표 1. IP 헤더필드의구성을파악하고요약하여설명할수있다. 2. Subnet ID 및 Subnet Mask 를설명할수있고, 각클래스의사용가능한호스트수와사설 IP 주소및네트

Microsoft PowerPoint - 4. 스캐닝-2(11.21) [호환 모드]

The Pocket Guide to TCP/IP Sockets: C Version

<4D F736F F F696E74202D FB5A5C0CCC5CDB8B5C5A9BFCD20BFC0B7F9C1A6BEEE20B1E2B9FD205BC8A3C8AF20B8F0B5E55D>

2. 인터네트워킹 서로떨어져있는각각의수많은네트워크들을연결하여하나의네트워크처럼연결하여사용할수있도록해주는것 3. 인터네트워킹에필요한장비 1 리피터 (Repeater) - 데이터가전송되는동안케이블에서신호의손실인감쇄 (Attenuation) 현상이발생하는데, 리피터는감쇄되는신

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - L4-7Switch기본교육자료.ppt

일반적인 네트워크의 구성은 다음과 같다

ARQ (Automatic Repeat reQuest)

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

Microsoft Word - NAT_1_.doc

Microsoft PowerPoint - 4.스캐닝-1(11.08) [호환 모드]

The Pocket Guide to TCP/IP Sockets: C Version

Microsoft PowerPoint Network-Transport

Microsoft PowerPoint - o8.pptx

0. 들어가기 전

Microsoft PowerPoint Network-Transport

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

¾Ë·¹¸£±âÁöħ¼�1-ÃÖÁ¾

2007백서-001-특집

00목차

01....b

(291)본문7

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Windows 8에서 BioStar 1 설치하기

Switching

Microsoft PowerPoint Network-Transport

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

OSI 참조 모델과 TCP/IP

11장 포인터

7. TCP

시스템, 네트워크모니터링을통한보안강화 네트워크의미래를제시하는세미나 세미나 NetFocus 2003 : IT 관리자를위한네트워크보안방법론 피지피넷 /

BMP 파일 처리

23

RHEV 2.2 인증서 만료 확인 및 갱신

Microsoft PowerPoint - tem_5

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode]

[ tcpdump 패킷캡처프로그램 ] tcpdump란? tcpdump 버전확인 tcpdump 플래그 (flags) tcpdump 사용법 tcpdump의사용예제 telnet을활용해 root와 passwd 암호알아내기 [01] tcpdump란? tcpdump는 Lawren

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - 06-IPAddress [호환 모드]

소프트웨어 융합 개론

게시판 스팸 실시간 차단 시스템

컴퓨터네트워크와인터넷 컴퓨터네트워크 Copyright by Tommy Kwon on August, 2010 Copyright by Tommy Kwon on August, 통신 정보전송시스템의구성과역할, 원리 l 원격지간에정보를잘전송하고처

<3130C0E5>

개요

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

Microsoft PowerPoint - MobileIPv6_김재철.ppt

슬라이드 제목 없음

제10장 트래핀스포트 및 응용 계층

Microsoft PowerPoint - net3

제20회_해킹방지워크샵_(이재석)

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

UDP Flooding Attack 공격과 방어

Microsoft PowerPoint - Supplement-02-Socket Overview.ppt [호환 모드]

PPP over Ethernet 개요 김학용 World Class Value Provider on the Net contents Ⅰ. PPP 개요 Ⅱ. PPPoE 개요및실험 Ⅲ. 요약및맺음말

Sena Device Server Serial/IP TM Version

388

1217 WebTrafMon II

V. 통신망 기술

서비스) 와서버( 관리대상서버) 간에자격증명을사용하여서로의 ID 를확인하고서로주고받는데이터를검사하고암호화하는프로세스 이다. 높은인증수준은일반적으로성능의저하를가져올수있지만높은 수준의보안과데이터무결성을제공한다. 기본값 - 관리대상서버에설정되어있는 DCOM 인증수준기본 값을

슬라이드 1

[QoS 강좌] QoS에서의 혼잡 회피 적용과 이해 ②

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

네트워크 설정

Microsoft PowerPoint - 3-Network-Transport

Chapter11OSPF

TTA Verified : HomeGateway :, : (NEtwork Testing Team)

¿ÀǼҽº°¡À̵å1 -new

슬라이드 1

untitled

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]


목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

PowerPoint Presentation

Microsoft PowerPoint - COMNET_10

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

슬라이드 제목 없음

Transcription:

1 Chapter 15 TCP Objectives TCP 서비스에대한이해 TCP 상태천이다이아그램 TCP 의흐름제어와오류제어 TCP 혼잡제어 TCP 타이머 TCP 옵션 TCP 패키지의구성요소및모듈

2 목차 TCP 서비스 TCP 특성 세그먼트 TCP 연결 상태천이다이어그램 TCP 윈도우 흐름제어

3 목차 ( 계속 ) 오류제어 혼잡제어 TCP 타이머 옵션 TCP 패키지

TCP/IP 프로토콜에서 TCP 의위치 4

5 15.1 TCP 서비스

6 15.1 TCP 서비스 ( 계속 ) TCP- 대 -IP

7 15.1 TCP 서비스 ( 계속 ) 포트번호

8 15.1 TCP 서비스 ( 계속 ) TCP 에서사용되는잘알려진포트

9 15.1 TCP 서비스 ( 계속 ) 스트림배달서비스 전이중서비스 연결지향서비스 신뢰성서비스

10 15.1 TCP 서비스 ( 계속 ) 스트림배달서비스

11 15.1 TCP 서비스 ( 계속 ) 스트림배달서비스 송신 TCP 송신응용프로그램으로부터문자스트림수신 ( 송신버퍼이용 ) 적절한크기인세그먼트를만들어네트워크를통하여전송 수신 TCP 세그먼트를수신 ( 수신버퍼이용 ) 데이터를추출하여문자스트림으로수신응용프로그램에전달

12 15.1 TCP 서비스 ( 계속 ) 송신버퍼와수신버퍼

13 15.1 TCP 서비스 ( 계속 ) TCP 세그먼트

14 15.1 TCP 서비스 ( 계속 ) 전이중서비스 동시에양방향전송 송신데이터와수신데이터에대한확인응답을함께보내는피기백킹 (piggybacking) 사용 연결 - 지향서비스 TCP 는연결지향프로토콜 물리적연결이아닌가상의연결 요청 승인 데이터교환 해제순으로진행 신뢰성서비스 확인응답메커니즘이용

15 15.2 TCP 특징

16 15.2 TCP 특징 바이트번호 모든데이터바이트에번호부여 송신순서번호 세그먼트에있는첫번째바이트에순서번호할당 확인응답번호 자신이수신하기를기대하는다음바이트번호

17 15.2 TCP 특징 ( 계속 ) Example 5,000 바이트의파일전송 첫번째바이트의순서번호 : 10,001 5개세그먼트는각각 1,000바이트 세그먼트 1 - 순서번호 : 10,001 (10,001 ~ 11,000) 세그먼트 2 - 순서번호 : 11,001 (11,001 ~ 12,000) 세그먼트 3 - 순서번호 : 12,001 (12,001 ~ 13,000) 세그먼트 4 - 순서번호 : 13,001 (13,001 ~ 14,000) 세그먼트 5 - 순서번호 : 14,001 (14,001 ~ 15,000)

18 15.2 TCP 특징 ( 계속 ) 흐름제어 수신측은송신측에서전송할데이터량제어 오류제어 신뢰성있는서비스를제공하기위해오류제어메커니즘구현 혼잡제어 망의혼잡을고려하여데이터량을수신측에서조절

19 15.3 세그먼트

20 15.3 세그먼트 TCP 세그먼트형식 TCP 를이용하여두개의장치간에전달되는데이터단위

21 15.3 세그먼트 ( 계속 ) 세그먼트 발신지포트번호 (source port address) : 전송호스트응용프로그램의포트번호 목적지포트번호 (destination port address) : 수신호스트응용프로그램의포트번호 순서번호 (sequence number) : 세그먼트에포함된데이터의첫번째바이트에부여된번호 확인응답번호 (acknowledgement number) : 상대방노드로부터수신하고자하는바이트의번호

22 15.3 세그먼트 ( 계속 ) 세그먼트 ( 계속 ) 헤더길이 (header length) : TCP 헤더길이의 4 바이트워드값 제어 (control) : 제어또는플래그

23 15.3 세그먼트 ( 계속 ) 제어필드

24 15.3 세그먼트 ( 계속 ) 세그먼트 ( 계속 ) 윈도우크기 (window size) 상대방이유지해야하는바이트단위의윈도우크기 확인을포함하는세그먼트 ( 즉, ACK 플래그 =1) 인경우에만유용 검사합 (checksum) : 오류제어

25 15.3 세그먼트 ( 계속 ) 세그먼트 ( 계속 ) 긴급포인터 (urgent pointer) URG 플래그가 1인경우에만유효 세그먼트가긴급데이터를포함할때사용 긴급데이터의마지막바이트에대한오프셋 옵션 (option) : 옵션정보 ( 최대 40 바이트 )

26 15.3 세그먼트 ( 계속 ) 검사합계산에사용되는의사헤더

27 15.3 세그먼트 ( 계속 ) 캡슐화 TCP header Application-layer data IP header Frame header IP payload Data-link layer payload TCP payload

28 15.4 TCP 연결

29 15.4 TCP 연결 TCP : 연결 - 지향프로토콜 발신지와목적지간에가상경로설정 연결설정과연결종료를통하여이루어짐

30 15.4 TCP 연결 ( 계속 ) 3 단계핸드셰이크 (three-way handshaking) 서버 : 자신의 TCP에게연결수락준비를통보 (passive open) 클라이언트 : 자신의 TCP에게특정한서버와의연결요청 (active open)

31 15.4 TCP 연결 ( 계속 ) 3 단계핸드셰이크절차 +

32 15.4 TCP 연결 ( 계속 ) SYN 플러딩공격 송신지 IP 주소를위조하여대량의 SYN 세그먼트를하나의서버에전송 서버는 SYN+ACK 를보낸후, TCP 연결에필요한자원 ( 타이머, 버퍼등 ) 을할당하므로서버의자원부족 서버는자원이없으므로모든서비스를거부 이를 DoS(Denial of service) 공격이라함

33 15.4 TCP 연결 ( 계속 ) 데이터전송

34 15.4 TCP 연결 ( 계속 ) 푸싱 (pushing) 데이터 수신 TCP 에게가능한한빨리데이터를응용프로그램으로전달해주도록요청할때사용 PSH 비트이용 응용프로그램의요구에의해서송신 TCP 가 PSH 비트를설정한다.

35 15.4 TCP 연결 ( 계속 ) 긴급데이터 송신응용프로그램으로부터전송된데이터의일부분을수신응용프로그램이순서에어긋나게읽기를원할때사용 예 ) Telnet 서비스에서의 control+c 전송 URG 비트와긴급포인터사용 세그먼트의시작에긴급데이터를넣고, 긴급포인터를긴급데이터의마지막오프셋으로지정 수신 TCP 에서는긴급데이터를추출하여먼저응용프로그램으로전달

36 15.4 TCP 연결 ( 계속 ) 연결종료 3-단계핸드셰이크방식과반-종료방식사용 클라이언트 : 능동종료 서버 : 수동종료

37 15.4 TCP 연결 ( 계속 ) 3- 단계핸드셰이크종료 +1 +

38 15.4 TCP 연결 ( 계속 ) 반 - 종료 (Half-close) +1 +1 +1 +1

39 15.4 TCP 연결 ( 계속 ) 연결리셋 연결거부 : 존재하지않는포트로연결을요구하는경우 연결중단 : 비정상적인상황인경우 휴지연결의종료 : 오랜시간동안연결이휴지상태인경우 이모든경우에는 RST 비트를 1 로설정한세그먼트를전송하여연결을리셋한다.

40 15.5 상태천이다이어그램

41 15.5 상태천이다이어그램 유한상태기기 (finite state machine) 이용구현

15.5 상태천이다이어그램 ( 계속 ) 42

43 15.5 상태천이다이어그램 ( 계속 ) 연결설정및종료

44 15.5 상태천이다이어그램 ( 계속 ) 연결거절

45 15.5 상태천이다이어그램 ( 계속 ) 연결중단

46 15.6 TCP 윈도우

47 15.6 TCP 윈도우 송신윈도우

48 15.6 TCP 윈도우 ( 계속 ) 수신윈도우

49 15.7 흐름제어

50 15.7 흐름제어 TCP 에서데이터흐름과흐름제어피드백 Messages are pushed 1 5 Flow control feedback 3 Messages are pulled 2 Segements are pushed 4 Flow control feedback

51 15.7 흐름제어 ( 계속 ) 흐름제어의예

52 15.7 흐름제어 ( 계속 ) 송신윈도우의확장 수신프로세스가수신속도보다빠르게데이터를처리하면확장

53 15.7 흐름제어 ( 계속 ) 송신윈도우축소 수신프로세스가수신속도보다느리게데이터를처리하면축소

54 15.7 흐름제어 ( 계속 ) Example 확인응답번호가 206 이고 rwnd 가 12 인세그먼트를수신했고, 더이상데이터를전송하지않은경우의슬라이딩윈도우 12

55 15.7 흐름제어 ( 계속 ) Example 확인응답번호가 210 이고 rwnd 가 5 인세그먼트를수신했고, 209 번바이트까지를전송한경우의슬라이딩윈도우

56 15.7 흐름제어 ( 계속 ) Example 수신측은윈도우가축소되는것을어떻게막을수있는가? Solution - 마지막에전송한확인응답번호와 rwnd 값을기억한다. - 다음의조건을만족하지못하면버퍼에공간이더생길때까지확인응답을지연한다. - (new ack + new rwnd) (old ack + old rwnd)

57 15.7 흐름제어 ( 계속 ) 어리석은윈도우신드롬 송신 / 수신응용프로그램이데이터를천천히생성하거나천천히처리할때발생 예 ) 1 바이트데이터 + 20 바이트 TCP 헤더 + 20 바이트 IP 헤더 비효율적인네트워크자원사용

58 15.7 흐름제어 ( 계속 ) 송신측에서발생하는신드롬 송신응용프로그램이한바이트씩데이터를천천히발생시키는경우에발생 가능하면한바이트데이터를전송하지못하게함 데이터를취합하여큰블록데이터로만들어전송 Nagle 알고리즘적용 : 송신 TCP에서실행하는알고리즘

59 15.7 흐름제어 ( 계속 ) Nagle 알고리즘 1. 송신 TCP는응용프로그램으로부터수신한첫데이터를세그먼트로만들어전송한다. 2. 첫번째세그먼트를전송한후송신 TCP는수신 TCP 로부터확인응답을수신하거나최대크기의세그먼트 (MSS) 를구성할정도로데이터가출력버퍼에저장되면세그먼트를전송한다. 3. 2번째단계를계속반복한다.

60 15.7 흐름제어 ( 계속 ) 수신측에서발생하는신드롬 어리석은윈도우신드롬이발생하는상황에서한바이트수신처리후에윈도우크기를통보하게되는경우에발생 Clark 해결방법 : 충분한공간이생기거나적어도버퍼가반이상비어있을때까지윈도우크기를 0 으로확인응답 확인응답송신지연 : 수신버퍼가충분한공간이생길때까지확인응답보류