วันเสาร์ที่ 13 มิถุนายน พ.ศ. 2552

Week : 2 Chapter 2 Network Models

Operation of the Internet Protocol suite betwe...Image via Wikipedia

Protocals and Standards
Protocol เป็น Standard ประเภทหนึ่ง แต่ก็มี Standard จำนวนมากที่ไม่อาจเรียกว่า Protocol

เราจะได้ยินคำว่าโปรโตคอลบ่อยๆ ในการใช้คอมพิวเตอร์ เพราะการสื่อสารของคอมพิวเตอร์ต้องมีรูปแบบที่เป็นมาตรฐานเหมือนกัน และเหนือกว่ารูปแบบ ยังต้องมีขั้นตอนในการส่งรูปแบบเหล่านั้นด้วย
เช่น การส่งข้อมูลในสายแลน จะเริ่มต้นด้วยเครื่องส่งถามเครื่องรับว่าพร้อมรับหรือไม่ เมื่อเครื่องรับตอบว่าพร้อมจึงระเริ่มส่งข้อมูล ข้อมูลที่ส่งก็ต้องมีรูปแบบเป็นมาตรฐานเดียวกัน ขั้นตอนทั้งหมดนี้จึงเรียกว่าโปรโตคอล
Protocal กฎเกณฑ์ที่ถูกกำหนดให้เป็นที่ยอมรับ เพื่อใช้ในการติดต่อสื่อสาร แบ่งได้เป็น

- Syntax ดูที่ความถูกต้องของโครงสร้างของข้อมูล

- Semantics ความหมายของแต่ละส่วนของโครงสร้างของข้อมูลว่าเป็นอย่างไร

- Timing ความเร็วในการส่งข้อมูล และเวลาในการส่งข้อมูล Standard เป็นมาตรฐานของอุปกรณ์ที่แสดงให้เห็นถึงความสามารถของการเชื่อมต่อระบบให้มีประสิทธิภาพ

Formal standard คือ มาตรฐานที่ถูกกำหนดขึ้นมาโดยองค์กรกลาง
De facto standard คือสิ่งที่ใช้ตามกันมา ไม่ได้กำหนดโดยองค์กรกลาง
องค์กรที่คอยกำหนดมาตรฐานสากลจะมีอยู่หลายองค์กรด้วยกัน โดยแต่ละองค์กรก็จะเน้นในเรื่องต่างๆ กันไป ดังเช่น
International Organization for standardization (ISO) จะเป็นองค์กรที่ทำหน้าที่กำหนดมาตรฐานสากลในหลาย ๆ ด้าน รวมทั้งในด้านของเครือข่ายคอมพิวเตอร์ โดยองค์กรนี้รับผิดชอบ ในการกำหนดแบบจำลองสำหรับอ้างอิง OSI (OSI reference model) และชุดโปรโตคอล OSI (OSI protocol suite)

1. American National Standards Institute (ANSI) เป็นองค์กรกำหนดมาตรฐานของสหรัฐอเมริกา ซึ่งมาตรฐานที่กำหนดได้รับการยอมรับนำไปใช้งานทั่วโลก โดย ANSI เองเป็นสมาชิกของ ISO ด้วยElectronic Industries Association (EIA) เป็นกลุ่มที่กำหนดมาตรฐานทางด้านสัญญาณไฟฟ้ามาตรฐาน ที่เป็นที่รู้จักและมีการใช้งานกับคอมพิวเตอร์คือมาตรฐาน RS-232 (มาตรฐานเกี่ยวกับอนุกรมสำหรับ เชื่อมต่ออุปกรณ์คอมพิวเตอร์)
2. Institute of Electrical and Electronic Engineers (IEEE) เป็นองค์กรของผู้เชี่ยวชาญด้านไฟฟ้าและอิเล็กทรอนิกส์ และมีการกำหนดมาตรฐานทางด้านเครือข่ายคอมพิวเตอร์ด้วย โดยมาตรฐานระบบเครือข่ายท้องถิ่น (LAN) ของ IEEE (IEEE 802.3, 802.4, 802.5) เป็นมาตรฐานซึ่งเป็นที่รู้จักกันดีที่สุด และได้รับการนำมาใช้กับระบบเครือข่ายท้องถิ่นสูงสุดในปัจจุบัน
3. International Telecommunication Union (ITU-T) หรือที่รู้จักกันในชื่อเดิมคือ Consultative Committee for International Telegraph and Telephone (CCITT) เป็นองค์กรกำหนดมาตรฐานทางด้านโทรคมนาคม โดยมาตรฐานซึ่งเป็นที่รู้จักดีก็คือ x.25 และมาตรฐาน V แบบต่าง ๆ เช่น V.29. V.34 ซึ่งเป็นมาตรฐานสำหรับโมเด็ม
4. Internet Architecture Board (IAB), Internet Engineering Task Force (IETF) คือ IAB จะเป็นองค์กรที่ทำหน้าที่กำหนดนโยบายและอนุมัติมาตรฐานของ Internet โดยจะออกเป็นเอกสาร RFC (Request for Comments) ฉบับต่าง ๆ เช่น Transmission Control Protocol/Internet Protocol (TCP/IP) เป็นต้น ส่วน IETF จะเป็นคณะทำงานที่ทำหน้าที่พัฒนามาตรฐานสำหรับการใช้งานใน Internet และส่งต่อให้ IAB เป็นผู้พิจารณาอนุมัติต่อไป


ความรู้เกี่ยวกับ OSI Model
การที่คอมพิวเตอร์เครื่องหนึ่งจะส่งข้อมูลไปยังคอมพิวเตอร์อีกเครื่องหนึ่งได้นั้น จะต้องอาศัยกลไกหลายๆอย่างร่วมกันทำงานต่างหน้าที่กันและเชื่อมต่อเป็นเครือข่ายเข้าด้วยกัน ปัญหาที่เกิดขึ้นคือการเชื่อมต่อมีความแตกต่าง ระหว่างระบบและอุปกรณ์หรือเป็นผู้ผลิตคนละรายกัน ซึ่งเป็นสิ่งที่ทำให้การสร้างเครือข่ายเป็นเรื่องยากมาก เนื่องจากขาดมาตฐานกลางที่จำเป็นในการเชื่อมต่อ

จึงได้เกิดหน่วยงานกำหนดมาตรฐานสากลขึ้นคือ International Standards Organization ขึ้นและทำการกำหนดโครงสร้างทั้งหมดที่จำเป็นต้องใช้ในการสื่อสารข้อมูลและเป็นระบบเปิด เพื่อให้ผู้ผลิตต่างๆสามารถแยกผลิตในส่วนที่ตัวเองถนัด แต่สามารถนำไปใช้ร่วมกันได้ ระบบเครือข่ายคอมพิวเตอร์สมัยใหม่จะถูกออกแบบให้มีโครงสร้างทีแน่นอน และเพื่อเป็นการลดความซับซ้อน ระบบเครือข่ายส่วนมากจึงแยกการทำงานออกเป็นชั้นๆ (layer) โดยกำหนดหน้าที่ในแต่ละชั้นไว้อย่างชัดเจน แบบจำลองสำหรับอ้างอิงแบบ OSI (Open System Interconnection Reference Model) หรือที่นิยมเรียกกันทั่วไปว่า OSI Reference Model ของ ISO เป็นแบบจำลองที่ถูกเสนอและพัฒนาโดยองค์กร International Standard Organization (ISO)โดยจะบรรยายถึงโครงสร้างของสถาปัตยกรรมเครือข่ายในอุดมคติซึ่งระบบเครือข่ายที่เป็นไปตามสถาปัตยกรรมนี้จะเป็นระบบเครือข่ายแบบเปิดและอุปกรณ์ทางเครือข่ายจะสามารถติดต่อกันได้โดยไม่ขึ้นกับว่าเป็นอุปกรณ์ของผู้ขายรายใด

OSI Model ได้แบ่ง ตามลักษณะของออกเป็น 2 กลุ่มใหญ่ ได้แก่

Application-oriented Layers เป็น 4 Layer ด้านบนคือ Layer ที่ 7,6,5,4 ทำหน้าที่เชื่อมต่อรับส่งข้อมูลระหว่างผู้ใช้กับโปรแกรมประยุกต์ เพื่อให้รับส่งข้อมูลกับฮาร์ดแวร์ที่อยู่ชั้นล่างได้อย่างถูกต้อง ซึ่งจะเกี่ยวข้องกับซอฟแวร์เป็นหลัก

Network-dependent Layers เป็น 3 Layers ด้านล่าง ทำหน้าที่เกี่ยวกับการรับส่งข้อมูลผ่านสายส่ง และควบคุมการรับส่งข้อมูล.ตรวจสอบข้อผิดพลาด รวมทั้งเลื่อกเส้นทางที่ใช้ในการรับส่ง ซึ่งจะเกี่ยวข้องกับฮาร์ดแวร์เป็นหลัก ทำให้ใช้ผลิตภัณฑ์ต่างบริษัทกันได้อย่างไม่มีปัญหา

การส่งผ่านข้อมูลระหว่างชั้น
เมื่อ computer A ต้องการส่งข้อมูลไปยัง computer B จะมีกระบวนการทำงานต่างๆ ตามลำดับดังนี้

ข้อมูลจาก Layer 7,6,5 จะถูกนำมาหั่นเป็นท่อนๆ แล้วใส่ข้อมูลบางอย่างตอ่เพิ่มเข้าไปในส่วนหัว เรียกว่า Header เพื่อใช้ในการบันทึกข้อมูลที่จำเป็นเช่น หมายเลข port ต้นทางและหมายเลข port ปลายทาง กลายมาเป็นก้อนข้อมูล(Segment) ใน Layer4 ซึ่งเรียกว่า TCP Segment

จากนั้นข้อมูล Layer4 จะถูกส่งผ่านลงไปยัง Layer3 และจะถูกใส่ Header อีกซึ่งเป็นการเพิ่ม header เป็นชั้นๆ เรียกว่า การ Encapsulate ซึ่งในส่วนนี้จะเหมือนกับการเอาเอกสารใส่ซองจดหมายแล้วจ่าหน้าซองระบุผู้ส่งและผู้รับ คือเป็นการบันทึกหมายเลข ip address ของโฮสต์ต้นทางและโฮสต์ปลายทางไว้ด้วย เมื่อการ encapsulate เสร็จสิ้นจะได้ก้อนข้อมูลที่เรียกว่า packet

จากนั้น packet ของข้อมูลจะถูกส่งผ่านไปยังระดับล่างอีก คือส่งไปให้ Layer2 ในชั้นนี้ข้อมูลจะถูกใส่ header เพิ่มเข้าไปที่ส่วนหัวเพื่อเก็บ MAC Address ของต้นทางและปลายทาง และยังมีการใส่ข้อมูล่ต่อเพิ่มเข้าไปในส่วนหางด้วย ข้อมูลที่ต่อเพิ่มไปในส่วนหางนี้เรียกว่า Trailer จึงรวมกันกลายเป็นก้อนข้อมูลของ Layer2 ที่เรียกว่า Frame

จากนั้น Frame ข้อมูลจะถูกแปลงให้กลายเป็น bit ของข้อมูลเพื่อส่งไปตามสื่อเข่นสาย UTP,Fiber ต่อไป การส่งสัญญาณทางไฟฟ้าไปตามสื่อต่างๆนี้ เป็นการทำงานในระดับ Layer1 เรียกว่า Physical Layer

หน้าที่ของแต่ละ Layer
Layer7, Application Layer เป็นชั้นที่อยู่บนสุดของขบวนการรับส่งข้อมูล ทำหน้าที่ติดต่อกับผู้ใช้ โดยจะรับคำสั่งต่างๆจากผู้ใช้ส่งให้คอมพิวเตอร์แปลความหมาย และทำงานตามคำสั่งที่ได้รับในระดับโปรแกรมประยุกต์ เช่นแปลความหมายของการกดปุ่มเมาส์ให้เป็นคำสั่งในการก็อปปี้ไฟล์ หรือดึงข้อมุลมาแสดงผลบนหน้าจอเป็นต้น

ตัวอย่างของ protocol ในชั้นนี้คือ Web Browser,HTTP,FTP,Telnet,WWW,SMTP,SNMP,NFS เป็นต้น

Layer6, Presentation Layer เป็นชั้นที่ทำหน้าที่ตกลงกับคอมพิวเตอร์อีกด้านหนึ่งในชั้นเดียวกันว่า การรับส่งข้อมูลในระดับโปรแกรมประยุกต์จะมีขั้นตอนและข้อบังคับอย่างไร จุดประสงค์หลักของ Layer นี้คือ กำหนดรูปแบบของการสื่อสาร อย่างเช่น ASCII Text,EBCDIC,Binary และ JPEG รวมถึงการเข้ารหัส (Encription)ก็รวมอยู่ใน Layer นี้ด้วย ตัวอย่างเช่น โปรแกรม FTP ต้องการรับส่งโอนย้ายไฟล์กับเครื่อง server ปลายทาง โปรโตคอล FTP จะอนุญาติให้ผู้ใช้ระบุรูปแบบของข้อมูลที่โอนย้ายกันได้ว่าเป็นแบบ ASCII text หรือแบบ binary

ตัวอย่างของ protocol ในชั้นนี้คือ JPEG,ASCII,Binary,EBCDICTIFF,GIF,MPEG,Encription เป็นต้น



Layer5, Session Layer เป็น Layer ที่ควบคุมการสื่อสารจากต้นทางไปยังปลายทางแบบ End to End และคอยควบคุมช่องทางการสื่อสารในกรณีที่มีหลายๆ โปรเซสต้องการรับส่งข้อมูลพร้อมๆกันบนเครื่องเดียวกัน (ทำงานคล้ายๆเป็นหน้าต่างคอยสลับเปิดให้ข้อมูลเข้าออกตามหมายเลขช่อง(port)ที่กำหนด) และยังให้อินเตอร์เฟซสำหรับ Application Layer ด้านบนในการควบคุมขั้นตอนการทำงานของ protocol ในระดับ transport/network เช่น socket ของ unix หรือ windows socket ใน windows ซึ่งได้ให้ Application Programming Interface (API) แก่ผู้พัฒนาซอฟแวร์ในระดับบนสำหรับการเขียนโปรแกรมเพื่อควบคุมการทำงานของ protocol TCP/IP ในระดับล่าง และทำหน้าที่ควบคุม "จังหวะ" ในการรับส่งข้อมูล ของทั้ง 2ด้านให้มีความสอดคล้องกัน (syncronization) และกำหนดวิธีที่ใช้รับส่งข้อมูล เช่นอาจจะเป็นในลักษณะสลับกันส่ง (Half Duplex) หรือรับส่งไปพร้อมกันทั้ง2ด้าน (Full Duplex) ข้อมูลที่รับส่งกันใน Layer5 นี้จะอยู่ในรูปของ dialog หรือประโยคข้อมูลที่สนทนาโต้ตอบกันระหว่างต้านรับและด้านที่ส่งข้อมูล ไม่ได้มองเป็นคำสั่งอย่างใน Layer6 เช่นเมื่อผู้รับได้รับข้อมูลส่วนแรกจากผู้ส่ง ก็จะตอบกลับไปให้ผู้ส่งรู้ว่าได้รับข้อมูลส่วนแรกเรียบร้อยแล้ว และพร้อมที่จะรับข้อมูลส่วนต่อไป คล้ายกับเป็นการสนทนาตอบโต้กันระหว่างผู้รับกับผู้ส่งนั่นเอง

ตัวอย่างของ protocol ในชั้นนี้คือ RPC,SQL,Netbios,Windows socket,NFS เป็นต้น

Layer4,Transport Layer เป็น Layer ที่มีหน้าที่หลักในการแบ่งข้อมูลใน Layer บนให้พอเหมาะกับการจัดส่งไปใน Layer ล่าง ซึ่งการแบ่งข้อมูลนี้เรียกว่า Segmentation ,ทำหน้าที่ประกอบรวมข้อมูลต่างๆที่ได้รับมาจาก Layer ล่าง และให้บริการตรวจสอบและแก้ไขปัญหาเมื่อเกิดข้อผิดพลาดขึ้นระหว่างการส่ง(error recovery) ทำหน้าที่ยืนยันว่าข้อมูลได้ถูกส่งไปถึงยังเครื่องปลายทางและได้รับข้อมูลถูกต้องเรียบร้อยแล้ว

หน่วยของข้อมูลที่ถูกแบ่งแล้วนี้เรียกว่า Segment ตัวอย่างของ protocol ในชั้นนี้คือ TCP,UDP,SPX


Layer3,Network Layer เป็น Layer ที่มีหน้าที่หลักในการส่ง packet จากเครื่องต้นทางให้ไปถีงปลายทางด้วยความพยายามที่ดีที่สุด (best effort delivery) layer นี้จะกำหนดให้มีการตั้ง logical address ขึ้นมาเพื่อใช้ระบุตัวตน ตัวอย่างของ protocol นี้เช่น IP และ logical address ที่ใช้คือหมายเลข ip นั่นเอง layer นี้ส่วนใหญ่เกี่ยวข้องกับอุปกรณ์ฮาร์ดแวร์ซึ่งที่ทำงานอยูบน Layer นี้คือ router นั่นเอง

protocol ที่ทำงานใน layer นี้จะไม่ทราบว่าpacketจริงๆแล้วไปถึงเครื่องปลายทางหรือไม่ หน้าที่ยืนยันว่าข้อมูลได้ไปถึงปลายทางจริงๆแล้วคือหน้าที่ของ Transport Layer นั่นเอง

หน่วยของ layer นี้คือ packet ตัวอย่างของ protocol ในชั้นนี้คือ IP,IPX,Appletalk


Layer2, Data Link Layer รับผิดชอบในการส่งข้อมูลบน network แต่ละประเภทเช่น Ethernet,Token ring,FDDI, หรือบน WAN ต่างๆ ดูแลเรื่องการห่อหุ้มข้อมูลจาก layer บนเช่น packet ip ไว้ภายใน Frame และส่งจากต้นทางไปยังอุปกรณ์ตัวถัดไป layer นี้จะเข้าใจถึงกลไกและอัลกอริทึ่มรวมทั้ง format จอง frame ที่ต้องใช้ใน network ประเภทต่างๆเป็นอย่างดี ในnetworkแบบEthernet layer นี้จะมีการระบุหมายเลข address ของเครื่อง/อุปกรณ์ต้นทางกับเครื่อง/อุปกรณ์ปลาทางด้วย hardware address ที่เรียกว่า MAC Address

MAC Address เป็น address ที่ฝังมากับอุปกรณ์นั้นเลยไม่สามารถเปลี่ยนเองได้ MAC Address เป็นตัวเลขขนาด 6 byte, 3 byte แรกจะได้รับการจัดสรรโดยองค์กรกลาง IEEE ให้กับผู้ผลิตแต่ละราย ส่วนตัวเลข 3 byte หลังทางผู้ผลิตจะเป็นผู้กำหนดเอง

หน่วยของ layer นี้คือ Frame ตัวอย่างของ protocol ในชั้นนี้คือ Ethernet,Token Ring,IEEE 802.3/202.2,Frame Relay,FDDI,HDLC,ATM เป็นต้น


Layer1, Physical Layer Layer นี้เป็นการกล่าวถึงข้อกำหนดมาตรฐานคุณสมบัติทางกายภาพของฮาร์ดแวร์ที่ใช้เชื่อมต่อระหว่างคอมพิวเตอร์ทั้ง2ระบบ สัญญาณทางไฟฟ้าและการเชื่อมต่อต่างๆของสายเคเบิล,Connectorต่างๆ เช่นสายที่ใช้รับส่งข้อมูลเป็นแบบไหน ข้อต่อหรือปลั๊กที่ใช้มีมาตรฐานอย่างไร ใช้ไฟกี่โวลต์ ความเร็วในการรับส่งเป็นเท่าไร สัญญาณที่ใช้รับส่งข้อมูลมีมาตรฐานอย่างไร Layer1 นี้จะมองเห็นข้อมูลเป็นการรับ-ส่งที่ละ bit เรียงต่อกันไปโดยไม่มีการพิจารณาเรื่องความหมายของข้อมูลเลย การรับส่งจะเป็นในรูป 0 หรือ 1 หากการรับส่งข้อมูลมีปัญหาเนื่องจากฮาร์ดแวร์ เช่นสายขาดก็จะเป็นหน้าที่ของ Layer1 นี้ที่จะตรวจสอบและแจ้งข้อผิดพลาดนั้นให้ชั้นอื่นๆที่อยู่เหนือขึ้นไปทราบ

TCP/IP (Transmitsion Control Protocol/Internet Protocol) เป็นชุดของโปรโตคอลที่ถูกใช้ในการสื่อสารผ่านเครือข่ายอินเทอร์เน็ต โดยมีวัตถุประสงค์เพื่อให้สามารถใช้สื่อสารจากต้นทางข้ามเครือข่ายไปยังปลายทางได้ และสามารถหาเส้นทางที่จะส่งข้อมูลไปได้เองโดยอัตโนมัติ ถึงแม้ว่าในระหว่างทางอาจจะผ่านเครือข่ายที่มีปัญหา โปรโตคอลก็ยังคงหาเส้นทางอื่นในการส่งผ่านข้อมูลไปให้ถึงปลายทางได้

ชุดโปรโตคอลนี้ได้รับการพัฒนามาตั้งแต่ปี 1960 ซึ่งถูกใช้เป็นครั้งแรกในเครือข่าย ARPANET ซึ่งต่อมาได้ขยายการเชื่อมต่อไปทั่วโลกเป็นเครือข่ายอินเตอร์เน็ต ทำให้ TCP/IP เป็นที่ยอมรับอย่างกว้างขวางจนถึงปัจจุบัน
TCP/IP Protocol
• การ Encapsulation/Demultiplexing
1. ชั้นโฮสต์-เครือข่าย (Host-to-network)
2. ชั้นสื่อสารอินเตอร์เน็ต (The Internet Layer)
a. IP (Internet Protocol)
b. ICMP (Internet Control Message Protocol)
3. ชั้นสื่อสารนำส่งข้อมูล (Transport Layer)
a. UDP (User Datagram Protocol)
b. TCP (Transmission Control Protocol)
i. การสื่อสารของ TCP
ii. การสื่อสารแบบ Three-ways handshake
4. ชั้นสื่อสารการประยุกต์ (Application Layer)

Reblog this post [with Zemanta]

1 ความคิดเห็น:

  1. โปรโตคอลใดที่ถูกพัฒนาขึ้นมาเพื่อนำไปใช้กับระบบเครือข่ายของ Netware?
    เข้าถึง Telkom University Jakarta

    ตอบลบ