NetEng-04.ppt

Similar documents
NetEng-05.ppt

untitled

I TCP 1/2 1

Flow Control Information Network 1 /

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

total-all-nt.dvi

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

第1回 ネットワークとは

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

Packet Tracer: 拡張 ACL の設定 : シナリオ 1 トポロジ アドレステーブル R1 デバイスインターフェイス IP アドレスサブネットマスクデフォルトゲートウェイ G0/ N/A G0/

ヤマハ ルーター ファイアウォール機能~説明資料~

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

Si-R30取扱説明書

IP IP DHCP..

2.5 トランスポート層 147

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

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

2004 SYN/ACK SYN Flood G01P014-6

ppt

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

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

2/11 ANNEX HATS HATS

SIP SDP(Session Description Protocol) RTSP(Real-time Streaming Protocol) RTP(Real-time Transport Protocol) IP 1 [1] 1: IP RTP(Real-Time RFC1889 Transf

ヤマハ ルーター ファイアウォール機能~説明資料~

PowerPoint Presentation

tutorial.dvi

IP.dvi

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

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

一般的に使用される IP ACL の設定

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


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

第1回 ネットワークとは

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

PowerPoint プレゼンテーション

設定例集_Rev.8.03, Rev.9.00, Rev.10.01対応

1 Linux UNIX-PC LAN. UNIX. LAN. UNIX. 1.1 UNIX LAN. 1.2 Linux PC Linux. 1.3 studenta odd kumabari studentb even kumabari studentc odd kumabari student

帯域を測ってみよう (適応型QoS/QoS連携/帯域検出機能)

1 IPv6 WG OS SWG PCOSIPv6 Windows Vista 2 3 KAMEUSAGIMacOSX IPv6 2

LAN

IPv4aaSを実現する技術の紹介

CPE9V1.0&AP615V2.0-C01说明书-电子档

Teradici Corporation # Canada Way, Burnaby, BC V5G 4X8 Canada p f Teradici Corporation Teradi

SRT/RTX/RT設定例集

PowerPoint プレゼンテーション

Microsoft PowerPoint ppt [互換モード]

2/ PPPoE... 9 AC(Access Concentrator) PPPoE PPPoE Ping FTP PPPoE

Lync Server 2010 Lync Server Topology Builder BIG-IP LTM Topology Builder IP Lync 2010 BIG IP BIG-IP VE Virtual Edition BIG-IP SSL/TLS BIG-IP Edge Web

VNSTProductDes3.0-1_jp.pdf

16soukatsu_p1_40.ai

SCREENOS NAT ScreenOS J-Series(JUNOS9.5 ) NAT ScreenOS J-Series(JUNOS9.5 ) NAT : Destination NAT Zone NAT Pool DIP IF NAT Pool Egress IF Loopback Grou

untitled

BJSManual

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

IP RTP 2 QoS i

ACLsamples.pdf

Mac OS X Server メールサービスの管理(バージョン 10.3 以降用)

PowerPoint プレゼンテーション

橡00horse.PDF

PPPoE HATS LAN


perimeter gateway

ScreenOS Copyright (C) 2005 NOX Co., Ltd. All Rights Reserved. Version1.00

Transcription:

4(1) 1

5 end-to-end host-to-host point-to-point 2

multiplexingdemultiplexing UDP TCP (flow control) (congestion control) TCP 3

()(IP) : best-effort 4

TCP (Transmission Control Protocol) (flow control) (congestion control) UDP (User Datagram Protocol) ( best-effort ) () 5

Multiplexing Demultiplexing (1) host-to-host process-to-process (end-to-end) demultiplexing demultiplexing cf. = IP + 6

Multiplexing Demultiplexing (2) demultiplexing TPDU (Transport Protocol Data Unit) multiplexing 7

Multiplexing Demultiplexing (3)? (source port number) (destination port number) H n H t TPDU M segment P1 P3 P4 P2 M M M M 8

Multiplexing Demultiplexing (4) (well-known port) 20, 21: FTP 25: SMTP 53: DNS 80: HTTP 110: POP3 source port # destination port # () TCP/UDP 9

UDP: User Datagram Protocol [RFC 768] UDP UDP UDP DNSSNMP UDP? / cf. TCP20UDP8 10

UDP: User Datagram Protocol [RFC 768] 16 1 1 0 # 32 # () = source = destination : UDP UDP 11

UDP 16 1 316 0110011001100000 0101010101010101 1000111100001100 12 0110011001100000 (1) 0101010101010101 (2) 1011101110110101 () 3 1011101110110101 (1+2) 1000111100001100 (3) 0100101011000010 () 1 1011010100111101 316 0110011001100000 (1) 0101010101010101 (2) 1000111100001100 (3) 1011010100111101 (cksum) 1111111111111111 12

13

(a) rdt_send( ) deliver_data( ) () rdt: reliable data transfer udt: unreliable data transfer () udt_send( ) udt_rcv( ) (b) 14

rdt_send( ): (e.g., ) deliver_data( ): rdt rdt_send( ) deliver_data( ) () () udt_send( ) udt_rcv( ) udt_send( ): rdt rdt_rcv( ): 15

(rdt) (finite state machine, FSM) 1 2 16

rdt1.0: FSM call from above rdt_send(data) packet = make_pkt(data) udt_send(packet) call from below rdt_receive(packet) extract(packet, data) deliver_data(data) (a) rdt1.0: (b) rdt1.0: 17

rdt2.0:? (ACK: acknowledgment) (NAK: negative acknowledgment) NAK ARQ (Automatic Repeat Request) 18

ARQ3 (UDP) (e.g., ) (ACK)(NAK) 19

rdt_send(data) sndpkt = make_pkt(data, cksum) rdt2.0fsm && corrupt(rcvpkt) sndpkt = make_pkt(nak) call from above && isack(rcvpkt) Λ (a) FSM ACK or NAK && isnak(rcvpkt) udp_send(sndpkt) call from below && notcorrupt(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ack) (b) FSM 20

rdt2.0 rdt_send(data) sndpkt = make_pkt(data, cksum) && corrupt(rcvpkt) sndpkt = make_pkt(nak) call from above && isack(rcvpkt) Λ (a) FSM ACK or NAK && isnak(rcvpkt) udp_send(sndpkt) call from below && notcorrupt(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ack) (b) FSM 21

rdt2.0 rdt_send(data) sndpkt = make_pkt(data, cksum) && corrupt(rcvpkt) sndpkt = make_pkt(nak) call from above && isack(rcvpkt) Λ (a) FSM ACK or NAK && isnak(rcvpkt) call from below && notcorrupt(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ack) (b) FSM 22

rdt2.0 Stop and wait 1 ACK/NAK?? ACK/NAK () 23

rdt2.1: ACK/NAK call 0 from above && notcorrupt(rcvpkt) && isack(rcvpkt) Λ && [ corrupt(rcvpkt) isnak(rcvpkt) ] rdt_send(data) sndpkt = make_pkt(0, data, cksum) ACK or NAK 1 ACK or NAK 0 && [ corrupt(rcvpkt) isnak(rcvpkt) ] && notcorrupt(rcvpkt) && isack(rcvpkt) call 1 from rdt_send(data) above sndpkt = make_pkt(1, data, cksum) Λ 24

rdt2.1: ACK/NAK && corrupt(rcvpkt) sndpkt = make_pkt(nak, cksum) 0 from below && notcorrupt(rcvpkt) && has_seq1(rcvpkt) sndpkt = make_pkt(ack, cksum) && notcorrupt(rcvpkt) && has_seq0(rcvpkt) extract(rcvpkt, data) deliver_data(data) sdndpkt = make_pkt(ack, cksum) && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ack, cksum) 1 from below && corrupt(rcvpkt) sndpkt = make_pkt(nak, cksum) && notcorrupt(rcvpkt) && has_seq0(rcvpkt) sndpkt = make_pkt(ack ck_sum) 25

rdt2.1 01? ACK/NAK rdt2.02 01 01 ACK/NAK 26

rdt2.2: NAK rdt2.1ack ACK ACK ACKNAK 27

call 0 from above rdt2.2: ACK && notcorrupt(rcvpkt) && isack(rcvpkt, 1) Λ rdt_send(data) sndpkt = make_pkt(0, data, cksum) && ACK1 [ corrupt(rcvpkt) isack(rcvpkt, 0) ] ACK0 && [ corrupt(rcvpkt) isack(rcvpkt, 1) ] && notcorrupt(rcvpkt) && isack(rcvpkt, 0) call 1 from rdt_send(data) above sndpkt = make_pkt(1, data, cksum) Λ 28

rdt2.2: ACK/NAK Λ oncethru = 0 && [corrupt(rcvpkt) has_seq1(rcvpkt)] if (oncethru = = 1) 0 from below && notcorrupt(rcvpkt) && has_seq0(rcvpkt) extract(rcvpkt, data) deliver_data(data) sdndpkt = make_pkt(ack, 0 cksum) oncethru = 1 && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ack, 1 cksum) 1 from below && [corrupt(rcvpkt) has_seq0(rcvpkt)] 29

rdt3.0: : (ACK) ACK? ACK ACK () ACK 30

rdt3.0: Λ call from above rdt_send(data) sndpkt = make_pkt(0, data, cksum) start_timer ACK0 && [ corrupt(rcvpkt) isack(rcvpkt, 1) ] Λ timeout start_timer && notcorrupt(rcvpkt) && isack(rcvpkt, 1) stop_timer && [ corrupt(rcvpkt) isack(rcvpkt, 0) ] timeout start_timer ACK1 rdt_send(data) sndpkt = make_pkt(1, data, cksum) start_timer && notcorrupt(rcvpkt) && isack(rcvpkt, 0) stop_timer call from above Λ 31

rdt3.0 send pkt0 rcv ACK0 send pkt1 rcv ACK1 send pkt0 ACK0 ACK1 ACK0 pkt0 pkt1 pkt0 (a) rcv pkt0 send ACK0 rcv pkt1 send ACK1 rcv pkt0 send ACK0 send pkt0 rcv ACK0 send pkt1 timeout resend pkt1 rcv ACK1 send pkt0 ACK0 pkt1 ACK1 ACK0 pkt0 (loss) pkt1 pkt0 rcv pkt0 send ACK0 rcv pkt1 send ACK1 rcv pkt0 send ACK0 (b) 32

rdt3.0 send pkt0 rcv ACK0 send pkt1 timeout resend pkt1 rcv ACK1 send pkt0 ACK0 ACK1 (loss) ACK1 ACK0 pkt0 pkt1 pkt1 pkt0 rcv pkt0 send ACK0 rcv pkt1 send ACK1 rcv pkt1 () send ACK1 rcv pkt0 send ACK0 send pkt0 rcv ACK0 send pkt1 timeout resend pkt1 rcv ACK1 send pkt0 rcv ACK1 do nothing ACK0 ACK1 ACK1 ACK0 pkt0 pkt1 pkt1 pkt0 rcv pkt0 send ACK0 rcv pkt1 send ACK1 rcv pkt1 () send ACK1 rcv pkt0 send ACK0 (c) ACK (d) 33

rdt3.0 rdt3.0 1Gbps(R)15ms 1KB(L) L/R RTT sender receiver 30.0081kB 267kb/sec (1Gbps) (Stop and Wait)! 34

1300,000km 1300km 1µ300m 1GHz CPU1,000,000 1GHz CPU1,000 () 10 USA100 Stop-and-Wait 35

Quiz-4 HTTP FTP SMTP 36

Quiz-5 DNS DNS 37

Quiz-6 DNSUDP 38