งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport Layer PART V.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport Layer PART V."— ใบสำเนางานนำเสนอ:

1 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport Layer PART V

2 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer สำคัญอย่างไร? เนตเวิร์กเชื่อมโยงอินเตอร์เน็ตอย่างไร ลักษณะการส่งข้อมูลในอินเตอร์เน็ต โปรโตคอล TCP/IP ทำงานอย่างไร

3 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 เนตเวิร์กเชื่อมโยงอินเตอร์เน็ตอย่างไร router High speed backbone

4 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 เนตเวิร์กเชื่อมโยงอินเตอร์เน็ตอย่างไร

5 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 เนตเวิร์กเชื่อมโยงอินเตอร์เน็ตอย่างไร

6 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 ลักษณะการส่งข้อมูลในอินเตอร์เน็ต router High speed backbone

7 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 ลักษณะการส่งข้อมูลในอินเตอร์เน็ต

8 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer สำคัญอย่างไร? เครือข่ายอินเตอร์เน็ต มีขนาดใหญ่ ประกอบด้วย เครือข่ายย่อยส่วนต่างๆ ซึ่งดูแล โดยผู้ให้บริการส่วนนั้นๆ ปัญหาเครือข่ายที่เกี่ยวกับการให้บริการ อาจเกิดขึ้น เช่น เราเตอร์เสีย การเชื่อมต่อเสีย แพกเก็ตข้อมูลอาจสูญหาย/เสียหายในอัตราค่อนข้างสูง

9 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer สำคัญอย่างไร? เพิ่ม Transport layer เหนือชั้น Network layer เพื่อให้มีความสามารถใน การส่งข้อมูลผ่านเครือข่ายที่ไม่มีความ น่าเชื่อถือ และมีความเสี่ยงสูงได้ แต่ ผู้ใช้ไม่มีสิทธิในการจัดการหรือ ควบคุมเครือข่ายย่อยเลย ทางออกที่เป็นไปได้คือ

10 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 โปรโตคอล TCP/IP ทำงานอย่างไร ให้แตกข้อมูลและข่าวสารออกเป็นส่วนย่อยที่เรียกว่า แพกเก็ต แพกเก็ตเหล่านี้ จะถูกส่งไปยังปลายทางที่เป็น เป้าหมายที่ถูกต้อง แล้วก็นำแพกเก็ตย่อยเหล่านี้ มารวมเข้าด้วยกันอีกครั้ง หนึ่งในรูปดั้งเดิมตามที่มันถูกส่งมา Transport layer : TCP ทำหน้าที่ แตกแพกเก็ตย่อย และนำกลับมารวมกันเข้า Network layer: IP ทำหน้าที่ ส่งแพกเก็ตไปยัง ปลายทางได้อย่างถูกต้อง

11 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Position of transport layer

12 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer duties Application layer Transport layer Network layer Datalink layer Physical layer

13 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer duties Connection-oriented: มีการสร้างการเชื่อมต่อ (connection) ก่อน จากนั้นจึงส่งข้อมูล ช้าในตอนเริ่มต้น แต่ชัวร์ Connectionless: ไม่มีการสร้างการเชื่อมต่อ (connection) สามารถส่งข้อมูลได้เลย ส่งได้รวดเร็วแต่ไม่รับประกันว่าถึงหรือไม่

14 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer duties กำหนดหมายเลข port สำหรับ process บนคอมพิวเตอร์ เพื่อการส่งข้อมูลแบบ process-to-process delivery

15 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport layer duties Flow control Error control คล้าย Datalink layer แต่จะทำใน ระดับ process-to-process แทนที่ จะเป็นในระดับ node-to-node

16 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapters Chapter 22 Process-to-Process Delivery Chapter 23 Congestion Control and QoS

17 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 22 Process-to-Process Delivery: UDP and TCP

18 McGraw-Hill©The McGraw-Hill Companies, Inc., Process-to-Process Delivery Client-Server Paradigm Addressing Multiplexing and Demultiplexing Connectionless/Connection-Oriented Reliable/Unreliable

19 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 The transport layer is responsible for process-to-process delivery. Note: process-to-process delivery คือการส่ง ข้อมูล ( ส่วนของข้อความ ) จาก process หนึ่งไปยังอีก process หนึ่ง

20 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.1 Types of data deliveries

21 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Note: สอง process ใดๆ จะสื่อสารกันใน ลักษณะ ผู้รับบริการและผู้ให้บริการ (client/server relationship)

22 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Client/server relationship

23 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Client/server relationship

24 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Port numbers Channel 35 Channel 21 Channel 18 Port 1863 Port 80 Port 25

25 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.2 Port numbers ผู้ส่ง ผู้รับ

26 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.3 IP addresses versus port numbers

27 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.4 IANA ranges Ports numbers are assigned by the IANA (Internet Assigned Number Authority).

28 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.5 Socket address

29 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Server with many ports

30 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.6 Multiplexing and demultiplexing Port 80 Port 23 Port

31 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 ลักษณะการทำงานของ transport layer Process-to-process delivery ใช้ client socket address และ server socket address Multiplexing/demultiplexing มีการแบ่งบริการ ตามลักษณะการ เชื่อมต่อในเครือข่าย Connectionless service (แบบไม่มี การเชื่อมต่อ) Connection-oriented service (แบบสร้างการเชื่อมต่อ) มีการแบ่ง ตามลักษณะความน่าเชื่อถือใน การส่งข้อมูล Unreliable Reliable UDP TCP

32 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.7 Connection establishment สำหรับ Connection-oriented service (แบบสร้างการเชื่อมต่อ)

33 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.8 Connection termination สำหรับ Connection-oriented service (แบบสร้างการเชื่อมต่อ)

34 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure 22.9 Error control

35 McGraw-Hill©The McGraw-Hill Companies, Inc., UDP Port Numbers User Datagram Applications

36 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 UDP is a connectionless, unreliable protocol that has no flow and error control. It uses port numbers to multiplex data from the application layer. Note: แบบไม่มีการเชื่อมต่อไม่น่าเชื่อถือ

37 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 UDP (User Datagram Protocol) UDP เป็นโปรโตคอลหลักที่ทำงานอยู่บนชั้น Transport เช่นเดียวกันกับ TCP โดยมีลักษณะดังต่อไปนี้ เป็นโปรโตคอลแบบ “Connectionless” นำส่งข้อมูลจากโพรโทคอลชั้น Application ไปยัง IP ไม่มีกลไกรับประกันความถูกต้องของข้อมูลเดทาแกรม โปรแกรมประยุกต์ที่ใช้ยูดีพี ต้องจัดการปัญหาเหล่านี้เอง ในชุดโปรโตคอลทีซีพี/ไอพี นั้น ยูดีพี คือกลไกแรกที่ใช้สำหรับส่ง เดทาแกรมไปยังโปรแกรมประยุกต์อื่น ยูดีพี ใช้ IP เพื่อส่งข้อความ จากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง แบบจำลอง ยูดีพี มีการส่งเด ทาแกรมแบบไม่ต้องสร้างการเชื่อมต่อและยังไม่น่าเชื่อถือ ซึ่ง หมายความว่าข้อความของยูดีพี อาจสูญหาย ซ้ำซ้อน ล่าช้า หรือ ใช้งานไม่ได้เมื่อถูกส่งออกไป แพ็คเก็ตอาจถึงเร็วกว่าที่ผู้รับจะ ประมวลผลได้ทัน แพ็คเก็ทอาจมาถึงแบบผิดลำดับ โดยโปรแกรม ประยุกต์ที่ใช้ ยูดีพี ต้องแก้ปัญหาเหล่านี้เอง

38 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 UDP (User Datagram Protocol) ประโยชน์หลักของ ยูดีพี คือ ความเร็วเพราะ ไม่ ต้องผ่านการจัดการข้อผิดพลาดใด ๆ ยูดีพี จึงเร็วกว่า ทีซีพี มาก โปรแกรมประยุกต์บาง ชนิดเหมาะที่จะใช้งาน ยูดีพี เช่น การติดต่อกับ Timeserver ที่พอร์ต 37 จะต้องได้รับข้อความที่ บรรจุเวลา GMT (Greenwich Mean Time) อยู่ เรื่อย ๆ ถ้าแพ็คเก็ทใดสูญหายก็ไม่มีผลมากนัก เพราะจะได้รับข้อความต่อไปอยู่ดี

39 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 หมายเลขพอร์ต (Port number) หมายเลขพอร์ต คือ หมายเลขที่ใช้ระบุโพรโทคอลของโปรแกรมประยุกต์เป็น ตัวเลขขนาด 16 บิต เป็นเสมือนแอดเดรสประจำโพรโทคอลในชั้นประยุกต์ทีซีพี/ไอ พี สงวนพอร์ตหมายเลข 1 ถึง 1023 ไว้ใช้ประจำโพรโทคอลประยุกต์โดยเรียกเลข พอร์ตนี้ว่า “well-known ports” ซึ่งใช้เป็นมาตรฐานทุกสถานีหรืออุปกรณ์เครือข่าย IANA ( Internet Assigned Numbers Authority ) ได้จำแนกประเภทของพอร์ต เป็น 3 ประเภท ดังนี้ 1. The well-known ports เป็นหมายเลขพอร์ตสากลที่ใช้เป็นมาตรฐานในเครือข่าย อินเทอร์เน็ต เช่น พอร์ตหมายเลข 21 เป็นพอร์ตสำหรับรับส่งไฟล์ FTP (File Transfer Protocol) เป็นต้น โดย The well-known ports เป็นพอร์ตตั้งแต่ The Registered Ports เป็นหมายเลขพอร์ตลงทะเบียนสำหรับองค์กรต่างๆ เช่น พอร์ตหมายเลข 1863 เป็นของ MSN Messenger เป็นต้น โดย The Registered Ports เป็นพอร์ตตั้งแต่ The Dynamic and/or Private Ports เป็นหมายเลขพอร์ตอิสระที่ไม่ใช่ The well knownports และไม่ใช่ The Registered Ports โดย Dynamic Ports นี้ แอพลิ เคชั่นทั่วไป สามารถเลือกมาใช้ได้และเป็นพอร์ตตั้งแต่ – 65535

40 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 หมายเลขพอร์ต (Port number) โปรโตคอลประยุกต์หนึ่ง ๆ อาจเรียกใช้ บริการได้ทั้งทีซีพีและยูดีพี โดยใช้ หมายเลขพอร์ตเดียวกัน แต่เป็นอิสระต่อ กัน ตัวอย่างเช่น echo มีหมายเลขพอร์ต เท่ากับ 7 หากมีการขอบริการทีซีพีและยูดี พีพร้อมกันที่พอร์ตนี้โปรเซสที่เกิดขึ้นจะ เป็นโปรเซสอิสระต่อกัน

41 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Table 22.1 Well-known ports used by UDP PortProtocolDescription 7EchoEchoes a received datagram back to the sender 9DiscardDiscards any datagram that is received 11UsersActive users 13DaytimeReturns the date and the time 17QuoteReturns a quote of the day 19ChargenReturns a string of characters 53NameserverDomain Name Service 67BootpsServer port to download bootstrap information 68BootpcClient port to download bootstrap information 69TFTPTrivial File Transfer Protocol 111RPCRemote Procedure Call 123NTPNetwork Time Protocol 161SNMPSimple Network Management Protocol 162SNMPSimple Network Management Protocol (trap)

42 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure User datagram format

43 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 User datagram format หมายเลขพอร์ตของสถานีต้นทาง (source port) ขนาด 16 บิต หมายเลขพอร์ตของสถานีปลายทาง (destination port) ขนาด 16 บิต ความยาว (length) ขนาด 16 บิต บอกความยาวของเดทาแกรม ทั้งเฮดเดอร์และข้อมูล หน่วยเป็นจำนวนไบต์ เช็คซัม (check sum) ขนาด 16 บิต ผลรวมตรวจสอบ คำนวณ จากผลรวมของเฮดเดอร์และข้อมูล (optional) จะเห็นว่ายูดีพีมีเฮดเดอร์ที่เรียบง่ายและมีฟิลด์จำนวนน้อย โดย ที่ไม่มีฟิลด์ที่ใช้รับประกันความเชื่อถือในการส่งข้อมูล ซึ่ง แตกต่างกับทีซีพี

44 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 ประโยชน์ ของ UDP การทำงานไม่ซับซ้อน เหมาะแก่การรับส่งข้อมูล สั้นๆ ระหว่าง client-server เหมาะแก่การส่งข้อมูลแบบ broadcasting หรือ multicasting ใช้ในการ update routing information โดยใช้ กับ Simple Network Management Protocol (SNMP) ใช้ในการส่งข้อมูล real-time multimedia โดย ใช้กับ Real-time Transport Protocol (RTP)

45 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 การส่งข้อมูล real-time multimedia ใช้ Real-time Transport Protocol (RTP) บน UDP

46 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 UDP is a convenient transport-layer protocol for applications that provide flow and error control. It is also used by multimedia applications. Note:

47 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 หลักการของ UDP

48 McGraw-Hill©The McGraw-Hill Companies, Inc., TCP Port Numbers Services Sequence Numbers Segments Connection Transition Diagram Flow and Error Control Silly Window Syndrome

49 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Table 22.2 Well-known ports used by TCP PortProtocolDescription 7 EchoEchoes a received datagram back to the sender 9DiscardDiscards any datagram that is received 11UsersActive users 13DaytimeReturns the date and the time 17QuoteReturns a quote of the day 19ChargenReturns a string of characters 20FTP, DataFile Transfer Protocol (data connection) 21FTP, ControlFile Transfer Protocol (control connection) 23TELNETTerminal Network 25SMTPSimple Mail Transfer Protocol 53DNSDomain Name Server 67BOOTPBootstrap Protocol 79Finger 80HTTPHypertext Transfer Protocol 111RPCRemote Procedure Call

50 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 TCP (Transmission Control Protocol) TCP เป็นโพรโทคอลหลักที่ทำ งานอยู่บนชั้น Transport ของแบบอ้างอิง TCP/IP ดังภาพประกอบ 2.1 โดยมีหน้าที่ดังต่อไปนี้ เป็นโพรโทคอลแบบ “Connection - oriented” จัดเตรียมการส่งถ่ายข้อมูลโดยสร้างการเชื่อมต่อ รักษาสภาพการเชื่อมต่อ ส่งข้อมูล ให้แน่ใจว่าข้อมูลถึงปลายทางอย่างถูกต้อง ทีซีพีฝั่งผู้ส่งต้องส่งแพ็ค เก็ทซ้ำ ใหม่หากแพ็คเก็ทสูญหาย รับประกันความเชื่อถือสำหรับการส่งข้อมูล จัดลำดับแพ็คเก็ทให้ถูกต้องตามลำดับ กำจัดแพ็คเก็ทซ้ำซ้อน ยกเลิกสภาพการเชื่อมต่อเมื่อสิ้นสุดการส่งถ่ายข้อมูล ทีซีพีต้นทางจัดรูปแบบข้อมูลเพื่อส่งให้ไอพีดำเนินการ ทีซีพีปลายทางเมื่อรับ แพ็คเก็ทจากไอพี ก็จะส่งต่อให้โพรโทคอลประยุกต์ที่ใช้บริการผ่านทีซีพี ได้แก่ TELNET, Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP) เป็นต้น

51 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 TCP-Transmission Control Protocol Connection-oriented Designed for reliable connection over unreliable network 3 phases Connection establishment Data transfer Connection termination Data arrive in sequence, flow and error control Adds reliability to IP

52 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Stream delivery Imaginary pipe

53 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Sending and receiving buffers Sending process และ receiving process ส่งและรับข้อมูลได้ด้วยอัตรา ไม่เท่ากัน ต้องใช้ buffer สำหรับการส่งและรับข้อมูล ในแต่ละทิศทาง

54 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure TCP segments TCP groups many bytes into a segment. Adds header to each segment. Delivers to IP network layer for transmission. Lost, corrupted re-sent segments handled at TCP. Receiving process is unaware of activities.

55 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Example 1 Imagine a TCP connection is transferring a file of 6000 bytes. The first byte is numbered What are the sequence numbers for each segment if data are sent in five segments with the first four segments carrying 1000 bytes and the last segment carrying 2000 bytes? Solution The following shows the sequence number for each segment: Segment 1 ==> sequence number: 10,010 (range: 10,010 to 11,009) Segment 2 ==> sequence number: 11,010 (range: 11,010 to 12,009) Segment 3 ==> sequence number: 12,010 (range: 12,010 to 13,009) Segment 4 ==> sequence number: 13,010 (range: 13,010 to 14,009) Segment 5 ==> sequence number: 14,010 (range: 14,010 to 16,009)

56 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 The bytes of data being transferred in each connection are numbered by TCP. The numbering starts with a randomly generated number. Note:

57 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 The value of the sequence number field in a segment defines the number of the first data byte contained in that segment. Note:

58 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 The value of the acknowledgment field in a segment defines the number of the next byte a party expects to receive. The acknowledgment number is cumulative. Note:

59 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure TCP segment format

60 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Control field

61 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Table 22.3 Description of flags in the control field FlagDescription URGThe value of the urgent pointer field is valid. ACKThe value of the acknowledgment field is valid. PSHPush the data. RSTThe connection must be reset. SYNSynchronize sequence numbers during connection. FINTerminate the connection.

62 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Three-step connection establishment

63 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Four-step connection termination

64 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Table 22.4 States for TCP StateDescription CLOSEDThere is no connection. LISTENThe server is waiting for calls from the client. SYN-SENTA connection request is sent; waiting for acknowledgment. SYN-RCVDA connection request is received. ESTABLISHEDConnection is established. FIN-WAIT-1The application has requested the closing of the connection. FIN-WAIT-2The other side has accepted the closing of the connection. TIME-WAITWaiting for retransmitted segments to die. CLOSE-WAITThe server is waiting for the application to close. LAST-ACKThe server is waiting for the last acknowledgment.

65 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure State transition diagram

66 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 A sliding window is used to make transmission more efficient as well as to control the flow of data so that the destination does not become overwhelmed with data. TCP’s sliding windows are byte-oriented. Note:

67 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Sender buffer

68 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Receiver window

69 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Sender buffer and sender window

70 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Sliding the sender window

71 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Expanding the sender window

72 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Shrinking the sender window

73 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 In TCP, the sender window size is totally controlled by the receiver window value (the number of empty locations in the receiver buffer). However, the actual window size can be smaller if there is congestion in the network. Note:

74 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Some points about TCP’s sliding windows: Note: The source does not have to send a full window’s worth of data. The size of the window can be increased or decreased by the destination. The destination can send an acknowledgment at any time.

75 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Lost segment

76 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure Lost acknowledgment Timeout seq:1201 Timeout seq:1401 Timeout seq:1601

77 McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Figure TCP timers


ดาวน์โหลด ppt McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Transport Layer PART V.

งานนำเสนอที่คล้ายกัน


Ads by Google