TCP T ransmission Control Protocol TCP TCP TCP TCP TCP TCP TCP TCP c /(18)

Similar documents
橡c03tcp詳説(3/24修正版).PDF

Contents Part1: TCP Part2: TCP Part3: TCP Part4: Part5: TCP Part6:

I TCP 1/2 1


第1回 ネットワークとは

2 1: OSI OSI,,,,,,,,, 4 TCP/IP TCP/IP, TCP, IP 2,, IP, IP. IP, ICMP, TCP, UDP, TELNET, FTP, HTTP TCP IP

2004 SYN/ACK SYN Flood G01P014-6

IP IP DHCP..

Flow Control Information Network 1 /

[1] [2] [3] (RTT) 2. Android OS Android OS Google OS 69.7% [4] 1 Android Linux [5] Linux OS Android Runtime Dalvik Dalvik UI Application(Home,T

2.5 トランスポート層 147

PowerPoint Presentation

NetEng-04.ppt

NetEng-05.ppt

¥¤¥ó¥¿¡¼¥Í¥Ã¥È·×¬¤È¥Ç¡¼¥¿²òÀÏ Âè1²ó

JGN2 先端グローバル R&D 網の構築と国際協調アプリケーションの展開 JGN2 の国際連携活動 4 図 -1 JGN2 国際ネットワーク構成 2 国際運用とその実務 JGN2 24 NOC Network Operation Center NOC NOC IP NOC JGN2

3. LISP B EID RLOC ETR B 4. ETR B ITR A 1: LISP 5. ITR A B EID RLOC 6. A SYN 7. ITR A ITR A B EID RLOC SYN ITR A RLOC ETR B RLOC 8. ETR B SYN ETR B B

トランスポートレイヤの仕事 計算機間での良好なデータのやり取りを実現する 誤りがないように 再送 パリティー情報による自動再生 (FEC; Forward Error Correction) データを取りこぼさないように それ以外に欲しくなる機能 並列データ転送 ネットワークに やさしく 道が混まな

Run-Based Trieから構成される 決定木の枝刈り法

untitled

スライド タイトルなし

wide95.dvi

17 TCP (ACK:ACKnowledge) (RTT:Round Trip Time) TCP (Transmission Control Protocol) PSPacer (Precise Software Pacer) JGN2 TCP FAST TCP UDP PSPacer

Macintosh HD:Users:ks91:Documents:lect:nm2002s:nm2002s03.dvi

IEEE e

ppt

TCP/IP Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.3 Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.4 2


IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( ) L09 IP (2017) 1 / 28

/07/ /10/12 I

P2P P2P Winny 3 P2P P2P 1 P2P, i

福岡大学人文論叢47-3

情報通信ネットワーク特論 TCP/IP (3)

IP IP MTU Maximum Transfer Unit MTU MTU [2] i

<Documents Title Here>

CSIS (No.324) {kazuya-o, okuda, 2012 IP (LBM) IPv6 GALMA LBM GALMA GALMA 1 (LBM:Location Based Multicast) LBM IP IP GALMA (Geograp

IPSJ SIG Technical Report Vol.2015-GN-93 No.29 Vol.2015-CDS-12 No.29 Vol.2015-DCC-9 No /1/27 1,a) 1 1 LAN IP 1), 2), 3), 4), 5) [

$ cal ) ( cal $ cal cal cal 1. () ( clear) 2. ( cal) 3. ( man) \() ( ) --() +()

tutorial.dvi

VoIPチュートリアル

図解でわかるVoIPのすべて - IP電話の技術から構築まで -

total-all-nt.dvi

Microsoft PowerPoint ppt [互換モード]

スライド タイトルなし

エラー処理・分割コンパイル・コマンドライン引数

Deck Guidelines

BIT -2-

TCP UDP TCP UDP send()sendto()sendmsg() recv()recvfrom()recvmsg() OS Passive Active TCP UDP IP TCP UDP MTAMail Transf

IPv6 トラブルシューティング ホームネットワーク/SOHO編

Mac OS X Server QuickTime Streaming Server 5.0 の管理(バージョン 10.3 以降用)

Transcription:

3 -- 4 1 TCP T ransmission Control Protocol 2013 12 TCP TCP TCP TCP TCP TCP TCP TCP c 2013 1/(18)

3 -- 4 -- 1 1--1 TCP 2013 12 TCP Transmission Control Protocol TCP TCP TCP 1981 RFC 793 Request for Comments 1) RFC 2) RFC 793 TCP 3) 5) TCP TCP 6) Segment TCP 13) 1-1-2 TCP TCP 1-1-3 TCP 1-1-4 TCP 1-1-5 TCP 1-1-6 TCP 1-1-7 TCP c 2013 2/(18)

3 -- 4 -- 1 1--2 TCP 2013 12 TCP 1 1 1)2)11) TCP TCP TCP!"#$%&! $*)+,!-&! 89::;<=>?@=A!!B?:=!,$(! "'$(%)! $*)E$*)G.!7! $*)E$*)G.!7! $=AFE$*)!!B?:=!.CD<=>?@=A> E$*)! $*)+$%)&!!B?:=E1')!.!7! %$(./"'$0%&! $*)G.!7E.!7!!B?:=E1')! 1')+2.'(+3! 1')E.!7!.!7!.!7G1')E.!7! 1')E.!7! 1')+2.'(+4! 1')E.!7!!"#$%+2.'(!!B?:=E1')!!"#$')5! ".$(+.!7!.!7! (;H=?IJ>9K=L>JM?>H9N;O> HIH>:=PH=AJ>B;Q=DH=:! ('6%+2.'(!.!7!!"#$%&! 1 1 TCP 2 OPEN SEND CLOSE SYN ACK RST FIN SYN SEND ESTABLISHED SYN+ACK/ACKSYN SEND SYN ACK, SYN ACK ESTABLISHED TCP LISTEN c 2013 3/(18)

SYN SEND SYN RCVD ACK ESTABLISHED FIN WAIT 1 ACK FIN WAIT 2 CLOSE WAIT CLOSING ACK LAST ACK TIME WAIT ACK ACK 2 CLOSED CLOSED TCP 1 1 TCP 1 1 c 2013 4/(18)

3 -- 4 -- 1 1--3 TCP 2013 12 TCP TCP CLOSED SYN SEND ESTABLISHED 1 2 CLOSED LISTEN SYN RCVD ESTABLISHED TCP 3 Three-way Handshake 1 2 +01234!!25625! -BC629@A23!!"#$!%#&! %!)-.'(!/%&!!"#$1!!"#$789-+:$1;<! -+:$7;<!!!!! =>??1629@A23! '(!)%#!!"#$*+,&! %!)-.'(!/%&! 1 2 TCP 1. i SYN 2. SYN i + 1 ACK k SYN 3. k SYN k + 1 ACK 3 14) c 2013 5/(18)

1 3 2 TCP -23456!,47847! &?A84>?2@=4!!!!!!"#$%&"'$(!!"#$%&"'$1! '")*$%&"'!!"#$5! &-.$59(!!"#$:! &-.$:9(! ;<==384>?2@=4! -+/,*$%&"'! +&,'$&-.! -+/,*0! 1 3 TCP TCP FIN FIN TCP ESTABLISHED FIN WAIT 1 FIN WAIT 2 TIME WAIT CLOSED 1 1 FIN WAIT 2 ACK TIME WAIT 2 CLOSED ESTABLISHED CLOSE WAIT LAST ACK CLOSED 1 3 FIN n ACK n+1 FIN m ACK m+1 11) c 2013 6/(18)

3 -- 4 -- 1 1--4 TCP 1--4--1 TCP 2013 12 TCP Fast Retransmit SACK Selective Acknowledgment TCP MSS Maximum Segment Size MSS TCP IP 1000 1000 1460 2459 ACK Acknowledgment ACK 1000 1460 ACK 2460 ACK ACK ACK TCP ACK Cumulative ACK ACK TCP ACK 1 8 bit 1 8 byte bit 1 byte c 2013 7/(18)

ACK RTT Round Trip Time RTT RTT + 4 RTT RTT n (1 α) RTT (n 1) + α RTT n RTT n (1 β) RTT (n 1) + β RTT n RTT n n α β 0.125 0.25 RTT RTT RTT 1--4--2 Fast Retransmit TCP ACK Fast Retransmit 15) 3 ACK Fast Recovery 1-6-1 ACK TCP ACK 10 11 ACK 11 12 11 ACK 1--4--3 SACK Selective Acknowledgment SACK Selective Acknowledgment 16)17) ACK TCP ACK 1 5 5 2 2 ACK SACK TCP SACK 4 c 2013 8/(18)

3 -- 4 -- 1 1--5 TCP 2013 12 TCP Congestion Control 18) Congestion Flow Control TCP TCP TCP Reno TCP TCP *+,-*./0! "1!!!!!""!!"#$$"%$$"&$$"'$$"(!!!!")! 23456789 :;<=,>!?789@234!?7CDE! AB:;<=,>! ;<=,>! FGH! IJKL/-! "1$$""$$"#!!"%$$"&$$"'$$"($$")! 23456789 :;<=,>! 234AB!?7CDE! :;<=,>!;<=,>! FMH! 1 4 1--5--1 ACK 1 4 5 1 4(a) 11 c 2013 9/(18)

ACK 12 14 ACK 15 16 1 4(b) 12 ACK 17 ACK 1--5--2 TCP TCP TCP TCP min (1 1) TCP (1 1) (1 1) TCP 0 ACK 0 ACK ACK TCP AIMD Additive Increase Multiplicative Decrease 18)19) AIMD TCP (1 2) c 2013 10/(18)

/2 (1 2) ACK (1 3) MSS 1460 ACK 1460 + 1460 1460/1460 2920 MSS 2 2 ACK RTT MSS 2 RTT MSS 3 1 RTT 1 MSS 1 5 (1 3) + MSS MSS/ (1 3) -./! 0./!!"#"$)! "&'$)!!"#"$(!!"#"$%! "&'$(! "&'$%!!"#"$*!!"#"$+!!"#"$,! 1 5 AIMD TCP AIMD (1) Slow Start (2) Congestion Avoidance (3) ssthresh Slow Start Threshold 1 Slow Start TCP 1 MSS ssthresh c 2013 11/(18)

64 K 18)20) ACK (1 4) ssthresh 1 RTT 2 1 6 + MSS (1 4)./0! 1/0!!"#"$)! "&'$)!!"#"$(!!"#"$%! "&'$(! "&'$%!!"#"$*!!"#"$+!!"#"$,!!"#"$-! 1 6 2 Congestion Avoidance ssthresh 18)20) (1 3) 1 5 3 ssthresh ssthresh ssthresh (1 5) ssthresh 18) AIMD c 2013 12/(18)

ssthresh /2 MSS (1 5)!"#$%&'"#()*#+",(-*.%(/0123%45! '#" '!" &#" &!" %#" %!" $#" $!" #"!"#$%!&'(&%)*'+,! -#./,+&0#.%12#03'.4,%)*'+,!!"!" #" $!" $#" %!" %#" &!" 6*7%(/&5! 1 7 1 7 1 7 5 s ssthresh 20 packet TCP Reno TCP TCP Tahoe TCP Reno (1), (2), (3) ACK < ssthresh ssthresh ACK ssthresh c 2013 13/(18)

3 -- 4 -- 1 1--6 TCP 2013 12 TCP Fast Retransmit Fast Recovery 15) TCP Reno 1--6--1 Fast Retransmit TCP TCP ssthresh MSS 1 ACK ACK ACK ACK ACK 3 1--6--2 Fast Recovery (1) ACK ACK ssthresh 3 MSS ACK ssthresh /2 ssthresh + 3MSS (2) ACK ACK + MSS (3) ACK ACK ssthresh ssthresh (1) ssthresh c 2013 14/(18)

1 8 TCP Reno 1 7!"#$%&'"#()*#+",(-*.%(/0123%45! '#" '!" &#" &!" %#" %!" $#" $!" #"!"#$%!&'(&%)*'+,! -#./,+&0#.%12#03'.4,%)*'+,!!"!" #" $!" $#" %!" %#" &!" 6*7%(/&5! 1 8 TCP Reno c 2013 15/(18)

3 -- 4 -- 1 1--7 TCP 2013 12 1--7--1 TCP 1 9 TCP 1)21) 32 bit 43) 53) 643) 673) 893)!"#$%&'() *+$%&'(),%-./'() 01234!"#5'() 6789) :;<= " ( & " $>?@%) ' () ) ' * GH7IDJ)! " # +, - ',.), / 0 1 2 0 AB.CADEF) KL$E.M) NO,P.) QRB.S) TEU%C4R%M53 1 9 TCP 16 bit 16 bit 32 bit ACK 32 bit ACK 4 bit 32 bit TCP TCP 32 bit 4 bit CWR, ECE,, FIN 8 bit CWR 1 bit IP ECN Explicit Congestion Notification ECE ECN-Echo 1 ECN-Echo bit c 2013 16/(18)

ECN URG 1 bit 1 0 ACK 1 bit 1 ACK 0 ACK PSH 1 bit 1 RST 1 bit 1 SYN 1 bit 1 SYN FIN 1 bit 1 FIN 16 bit 16 bit TCP IP 1) IP 16 bit 0 0 16 bit 1 1 16 bit 1 1 16 bit 1 16 bit 8 bit SACK TCP 1--7--2 TCP IP IP IP well-known IP IP TCP 16 bit 0 c 2013 17/(18)

22) Internet Assigned Numbers Authority IANA web HTTP 80 web 80 web well-known 1) J. Postel (ed.), Transmission Control Protocol, RFC 793, 1981. 2) R. Braden (ed.), Requirements for Internet hosts - communication layers, RFC 1122, 1989. 3) V. Cerf and R. Kahn, A protocol for packet network intercommunication, IEEE Trans on Commun., vol.com-22, no.5, pp.637-648, 1974. 4) B. Leiner, R. Cole, J. Postel, and D. Mills, The DARPA internet protocol suite IEEE Communications Magazine, vol.23, no.3, pp.29-34, 1985. 5) D. D. Clark, The design philosophy of the DARPA Internet protocols, Proc. SIGCOMM 88, Computer Communication Review, vol.18, no.4, pp.106-114, 1988. 6),,,, 1999. 7),,, 1999. 8),,,, 3,, 2001. 9) D. E. Comer (, ), /IP TCP Vol. I 4,, 2002. 10),,,, 2002. 11) A. S. Tanenbaum (,,,, ), 4, BP, 2003. 12),,,, TCP/IP 4,, 2007. 13),,,, 2009. 14) R. S. Tomlinson, Selecting sequence numbers, Proc. the 1975 ACM SIGCOMM/GIGOPS Workshop on Interprocess Communications, pp.11-23, 1975. 15) V. Jacobson, Modified TCP congestion avoidance algorithm, end2end-interest mailing list, April 30, 1990. 16) M. Mathis, J. Mahdavi, S. Floyd, and A. Romanow, TCP selective acknowledgment options, RFC 2018, 1996. 17) S. Floyd, J. Mahdavi, M. Mathis, and M. Podolsky, An extension to the selective acknowledgement (SACK) option for TCP, RFC 2883, 2000. 18) V. Jacobson, Congestion avoidance and control, Proc. ACM SIGCOMM 88, pp.314-329, 1988. 19) R. Jain, K. Ramakrishnan, and D.-M., Chiu, Congestion avoidance in computer networks with a connectionless network layer, Tech. Rep. DEC-TR-506, Digital Equipment Corporation, 1987. 20) M. Allman, V. Paxson, and W. Richard Stevens, TCP Congestion Control, RFC 2581, 1999. 21) K. Ramakrishnan, S. Floyd, and D. Black, The addition of explicit congestion notification (ECN) to IP, RFC 3168, 2001. 22) J. Reynolds and J. Postel, Assigned numbers, RFC 1700, 1994. c 2013 18/(18)