Click here to load reader
Upload
kessie-garrett
View
18
Download
1
Embed Size (px)
DESCRIPTION
第 12 章. UDP 與 TCP. 本章提要. UDP TCP TCP 傳送機制 TCP 連線 TCP 封包 擷取 TCP 封包. UDP. UDP (User Datagram Protocol) 協定僅提供連接埠 (Port) 處理的功能。具有以下特性: UDP 表頭可記錄封包來源端與目的端的連接埠資訊 , 讓封包能夠正確地送達目的端的應用程式。 - PowerPoint PPT Presentation
Citation preview
12 UDP TCP
UDPTCPTCP TCP TCP TCP
UDPUDP (User Datagram Protocol) (Port) UDP , (Connectionless) , UDP , , UDP , ()
UDP DNS , , TCP , UDP, , , , , UDP
UDP (Multicast) (Broadcast) , UDP (Connection-Oriented) TCP,
UDP UDP Internet Explorer Outlook Express, IP UDP
Port, , TCP/IP , , TCP/IP , , IP , ,
IP Socket Address ( Socket), IP , , IP ,
IP IP , IP , (), , , , ,
16 Bits , 0 65535 IANA (Internet Assigned Numbers Authority) , 0 ~ 1023 Well-Known () , IANA , 0 ~ 1023
DNS 53, DNS 53 1024 ~ 49151 Registered , IANA , Shockwave , 1626
49152 ~ 65535 Dynamic () , Internet Explorer , Internet Explorer
Well-Known
Well-Known , , , , Telnet 23 Well-Known
, , , Windows 2000 1024~5000
Well-Known , , Web 2001, 80, , , , ,
UDP UDP UDP (Application Layer) UDP Payload, UDP Data UDP Message, UDP
UDP UDP , , UDP UDP IP (), IP PayloadUDP 8 Bytes, 4 16
UDP , UDP
UDP UDP , Byte 8, UDP , UDP IP Payload UDP UDP , , , 0
UDP , UDP UDP , , Pseudo Header (), IP IP IP IP 8 Bits, 0IP UDP
, 2 Bytes , Pseudo Header UDP 2 Bytes , 1 Byte Padding, 2 Bytes Pseudo Header UDP
1. , UDP , Pseudo Header UDP
2. Pseudo Header Padding , Pseudo Header Padding IP Payload, 3. UDP , IP , Pseudo Header Padding, , UDP
UDP , 203.74.205. 111, 80, 203.74.205.109 80 Web Server , , UDP UDP , UDP , Pseudo Header
UDP Web Site , DNS
UDP 3008 Dynamic 53 DNS Well-KnowUDP UDP , Name tw.lycosasia.com IP DNS Query
TCP UDP , TCP (Transmission Control Protocol) , TCP , UDP , TCP
TCP IP, , , ..., , ,
TCP , (UDP), , , (TCP),
TCP TCP , , , , , , TCP, ,
TCP TCP (Connection-Oriented) , TCP , TCP , (),
TCP Sliding WindowSend / Receive WindowWindow Size Byte
TCP , A B, , A B 1. A Packet 1 B, , B 2. B Packet 1 , ACK 1 AACK 1 Packet 1
3. A ACK 1 , Packet 1 Packet 2 B, , B 4. B Packet 2 , ACK 2 AACK 2 Packet 2
, A B Packet 1Packet 2 , Packet 2 , B ACK 2 AA ACK 2, B Packet 2, Packet 2 B
, TCP , , ,
Sliding Window, , A , , ACK , , , ACK
Sliding WindowSliding Window , Window, A B , Sliding Window
Sliding Window
Sliding WindowA Window , Packet 1Packet 2 Packet 3 , , B B , ACK AB Packet 1, ACK 1 A
Sliding Window
Sliding Window
Sliding Window
Send / Receive Window Sliding Window , A Sliding Window, TCP Sliding Window, Sliding Window Send Window (), Sliding Window Receive Window ()
Send / Receive WindowReceive Window , A B , B, B Receive Window, B , ACK
Send / Receive Window, 1 ~ 7 89 14 , 10 ~ 13 15 ~ 16 ,
Send / Receive WindowReceive Window
Send / Receive Window B A , 1. Packet 1, Packet 1 2. Window , ACK , Receive Window 1 Window , 1 , Window
Send / Receive Window B Packet 3Packet 1Packet 2 , B Receive Window 1. B Packet 3, Packet 3 Packet 3 Window , ACK, Receive Window
Send / Receive Window
Send / Receive Window
Send / Receive Window
Send / Receive Window
Send / Receive Window
Send / Receive Window
Send / Receive Window Receive Window , Window (ACK), , , B , (Buffer),
Window Size TCP , (Flow Control), TCP , Sliding Window ( Window Size) Window Size , Window Size 1 , , 1 ,
Window Size Window Size , , , Window Window Size , , , , Window Size
Window Size Window Size , B Receive Window , ACK A, A Send Window , B Receive Window , B , A , Receive Window B ACK , A
Byte TCP Byte , TCP Payload Byte Bytes Stream TCP Payload TCP , TCP (TCP Header)
(Sequence Number)TCP (Sequence Number) , TCP Payload 1 Byte , , A Initial Sequence Number (ISN, ), 1 B, B ACK , A TCP Payload
(Sequence Number) 1 ISN, ISN+1 (Payload, ISN , , Payload ISN+1 ) A B , 1 Byte
(Sequence Number)ISN 1000, A Payload 100200300Bytes Packet 123 B ,
(Acknowledge Number) X Y 100, X Y 100 , Y X , 100, , X 100 , Y 100 ,
(Acknowledge Number) 11-02 , A ISN 1000, 100 Bytes Packet 1 BB ACK 1 , ACK 1 1101, B A , 1Byte 1101
(Acknowledge Number), (ISN) A () , Packet 1 = ISN+1Packet 2 = ACK 1 Packet 3 = ACK 2 ...
2 TCP Payload 1 ByteACK , , TCP Payload , ,
Window Sliding Window Byte Window,
Window
, TCP , AB , A B, B ATCP
AB AB / Send / Receive Window, TCP 2 2 2 Send Window, 2 Receive Window, AB , , B ACK A , B A , ACK
,
TCP , , , TCP , Sliding Window,
TCP Bytes Stream, , Sliding Window , Byte Stream Byte TCP ,
TCP TCP TCP (TCP Connection) , TCP TCP
TCP IP B Web , B IP , ,
, (Active), (Passive)WWW , , Web , TCP , , ISN () Window Size
Handshaking, , Handshaking 3 , TCP A TCP , B , Handshaking AB , ABAB
1 A 1 TCP B, SYN (Synchronize, ) AB , AB ISN, ISN (AB) 4 Bytes, AB AB , 0
1 SYN Flag TCP , ISN, Window Size A Receive Window , Window (AB) B Send Window , AB
2 B SYN , SYN-ACK , AB ISN, ISN (AB) SYN ISN(AB), SYN-ACK ISN(AB) 1, A TCP ISN(AB)+1 1 Byte
2 SYN-ACK Flag SYN-ACK SYN Synchronize , ACK Acknowledgement, ISN (AB), Window Size B Receive Window , Window (AB) A Send Window , AB
3 A SYN-ACK , ACK , AB 1 Byte , SYN-ACK Window Size A Receive Window , Window (AB)
3 2 SYN-ACK AB ISN, AB , A , ISN(AB) 1, A B , ISN(AB)+1 1 Byte ACK Flag
TCP , , () 4 , TCP A ,
1 A 1 TCP B, FIN-ACK (FIN Finish ) , AB , AB , FSN (Final Sequence Number, ), FSN(AB)
1 AB FIN-ACK Flag AB , ACK Window Size ,
2 B ACK A, AB AB , 1 FINACK FSN(AB) 1ACK Flag
2 , AB , AB , AB , 3
3 B AB , FIN-ACK A, AB , , FSN(AB) AB 1 , A B, 2 , FSN(AB) + 1
3 FIN-ACK Flag AB ,
4 A ACK B, AB , 1 FIN-ACK FSN(AB) 1 AB , 3 FINACK FSN(AB) 1ACK Flag
TCP TCP , Sequence NumberWindow Size TCP TCP Payload, TCP Segment, TCP
TCP
TCP TCP , , AB , A TCP A TCP B TCP
TCP TCP 1 Byte B A , 1 Byte 4 Bits, TCP , 4 Bytes
TCP , Options Padding , , TCP Options Padding Options Padding 0, , TCP 20 Bytes
Acknowledge ()Synchronize () ISN, , 1 2
Urgent ()Urgent Flag 1 , B Urgent Urgent , , TCP Urgent Finish () AB 2 4 ,
Window Size BA Receive Window , AB , A AB , A Receive Window A AB , A Receive Window
2 Bytes, TCP , TCP Pseudo Header UDP
Urgent Pointer () 2 Bytes Urgent Flag 1 , TCP , Urgent Byte 3 , TCP 4 Bytes ( 0 3 Byte) Urgent
Options and PaddingOptions , TCP , MSSSACK-Permitted SACK 3 Padding TCP ( Options ) 4 Bytes
Options Option Kind 1 Byte, Options , 2 MSS4 SACK-Permitted5 SACKOption Length 1 Byte, Option , ByteOption Data, Option Option Data Option Length 2 (Option Kind Option Length 1Byte)
MSSMSS Maximum Segment Size (SYN Flag=1) , TCP AB , 1 , A MSS B, B 2 MSS A, , AB AB TCP
MSS, TCP IP Payload , TCP IP Payload, MSS MTU IP , TCP , MTU 1500 Bytes, IP (20 Bytes), TCP (20 Bytes), MSS 1460
MSS Option KindMSS 2Option LengthMSS 4 Bytes, 4Option Data 2 Bytes, MSS , Byte
SACK-Permitted AB , B ACK , A 4 100 Bytes B, B 100-199 , (200~299 300~399) , ACK A, A ACK , 100-399 , 200-399
SACK-Permitted
SACK-Permitted, TCP SACK (Selective Acknowledgement) SACK-Permitted SACK-Permitted , SACK SACK , , B SACK , A 200-399 , A
SACK-PermittedSACK-Permitted SYN Flag 1 , 1 2 AB , A 1 SACK-Permitted, A SACK , B , SACK ACK A
SACK-Permitted Option Option KindSACK-Permitted 4Option LengthSACK-Permitted 2 Bytes, 2Option Data 0
SACK ACK Flag 1 , SACK AB , B ACK A , SACK , Option Data ,
SACK Option KindSACK 5Option LengthSACK 8 Bytes ( 4 Bytes) 1 , 4 Bytes 1 , 4 Bytes
SACK 2 , 4 Bytes 2 , 4 Bytes
TCP Net Analyzer TCP , , Brower Web Server, TCP
1
1 Browser , Registered / Dynamic Web Server , 80 Browser (Initial Sequence Number), , ISN (BrowserServer)
1 TCP 20 Bytes, 8 Bytes , SYN Flag 1Browser Receive Window MSS , , MSS 1460 BytesSACK-Permitted , Browser SACK ACK
2
2 Web Server Browser Web Server (Initial Sequence Number), , ISN (BrowserServer)ISN (BrowserServer) + 1TCP 20 Bytes, 8 Bytes
2 , ACK SYN Flag 1Web Server Receive Window MSS , , MSS 1460 BytesSACK-Permitted , Web Server SACK ACK
3
3 ISN (BrowserServer) + 1ISN (BrowserServer) + 1TCP , 20 Bytes, ACK Flag 1Browser Receive Window