Page 242 - Computer Network
P. 242

29.1. ซ็อกเก็ต (SOCKET)                                                            233



























                                                                           book)





                                         รูปที่ 29.2: การสร้างการเชื่อมต่อแบบ Connection-oriented
                                                          (partial
                               • socket หมายถึง ซ็อกเก็ตที่จะใช้ อ้างถึงแลขจำนวนเต็มที่สร้างขึ้น

                               • local address หมายถึง แอดเดรสที่จะถูก bind

                               • address lenght หมายถึง ความยาวของแอดเดรส หน่วยเป็นไบต์

                       listen คำสั่ง listen จะทำให้เซิร์ฟเวอร์สร้างซ็อกเก็ตเพื่อรอการเชื่อมต่อที่อาจเกิดขึ้น โดยรูปแบบของคำสั่ง listen
                            จะเป็น             only       listen(socket, qlength)



                                    KKU
                            โดยที่ในที่นี้ qlength เป็นการกำหนดความยาวของคิวที่ร้องขอ (request) หากขนาดคิวเต็มการร้องขอนั้น
                            จะถูกกำจัดทิ้งไป


                       accept หลังการสร้างซ็อกเก็ตสิ้นสุด เซิร์ฟเวอร์จะรอเพื่อสร้างการเชื่อมต่อ โดยการเรียกใช้คำสั่ง accept จาก
                            ระบบ เมื่อเรียกใช้ accept เซิร์ฟเวอร์จะบล็อก (block) จนกระทั่งมีการร้องขอ โดยคำสั่ง block จะเป็น

                                              newsock = accept(socket, address, address lenght)


                               • socket ระบุซ็อกเก็ตที่จะ wait

                               • address เมื่อได้รับการร้องขอส่วนของ แอดเดรส จะระบุแอดเดรสของไคลเอนต์ที่เซิร์ฟเวอร์ได้รับ
                               • address lenght เป็นความยาวของแอดเดรสที่ร้องขอ


                         ในส่วนของฝั่งไคลเอนต์หลังจากสร้างซ็อกเก็ตเสร็จ ไคลเอนต์จำเป็นต้องสร้างการเชื่อมต่อโดยการใช้คำสั่ง
                      connect ในการกำหนดแอดเดรสก่อนที่จะเริ่มการส่งขอมูล โดยที่รูปแบบของคำสั่ง connect จะเป็น


                                             connect(socket, dest address, address lenght)

                          • socket หมายถึงซ็อกเก็ตที่จะเชื่อมต่อ (connect)


                          • destination address หมายถึงแอดเดรสของภาครับที่ต้องการเชื่อมต่อ
   237   238   239   240   241   242   243   244   245   246   247