มาตรฐานการสื่อสารคอมพิวเตอร์ระบบเปิด
องค์การระหว่างประเทศเพื่อการทำให้เป็นมาตรฐาน (International Organization for Standardization - ISO) ได้เล็งเห็นปัญหาความเข้ากันไม่ได้ของระบบจากบริษัทผู้ผลิตต่างๆ ทั่วโลก ซึ่งเป็นความไม่สะดวกอย่างมากต่อลูกค้าผู้ใช้งาน จึงมีการพิจารณาร่างกรอบของมาตรฐาน ให้เป็นระบบเปิดเพื่อให้ระบบจากค่ายต่างๆ สามารถทำงานร่วมกันได้ เรียกว่า มาตรฐานการสื่อสารคอมพิวเตอร์ระบบเปิด (Open System Interconnection - OSI) ขึ้น ซึ่งใน OSI เองนี้จะยังไม่มีมาตรฐานใดๆ บรรจุอยู่ เป็นแต่เพียงกรอบของมาตรฐาน (Framework of Standards) ที่ระบุว่าควรแบ่งระบบเป็น 7 ชั้นการทำงาน และในแต่ละชั้นนั้นควรมีหน้าที่อะไรบ้าง เพราะฉะนั้นเมื่อระบบจากค่ายต่างๆ ถูกออกแบบขึ้นมาโดยยึดถือแนวทางของ OSI นี้ ระบบจากต่างบริษัท หรือต่างค่ายกันนั้นก็จะสามารถทำงานร่วมกันได้ ซึ่งทำให้กลุ่มลูกค้าผู้ใช้งานมีอิสระมากขึ้นในการพิจารณา เลือกใช้งานระบบต่างๆ เหล่านั้น
สำหรับในบทแรกนี้จะกล่าวถึงรายละเอียดและแนวความคิดเกี่ยวกับ OSI ก่อนเพราะอาจมองได้ว่า OSI คือภาพรวมทั้งหมดของการศึกษาทางด้านการสื่อสารข้อมูลและวงจรข่ายคอมพิวเตอร์ เพราะในแต่ละชั้นของ OSI นั้นจะเกี่ยวข้องกับผู้ออกแบบ, ช่างเทคนิค หรือผู้ใช้วงจรข่ายคอมพิวเตอร์ แต่ละกลุ่มตามหน้าที่ต่างๆ กันไป หลังจากทำความเข้าใจเกี่ยวกับ OSI ดีแล้ว จึงไปพิจารณารายละเอียดแยกตามแต่ละชั้นการทำงานภายหลัง ซึ่งส่วนที่เกี่ยวข้องกับทางเทคนิคก็คงจะเป็นชั้นการทำงานในระดับล่าง
มาตรฐานการสื่อสารคอมพิวเตอร์ระบบเปิดแบ่งเป็น 7 ชั้นการทำงานนับจากชั้นบนสุดที่จะติดต่อโดยตรงกับผู้ใช้คือ application layer, presentation layer, session layer, transport layer, network layer, datalink layer และ physical layer เป็นชั้นล่างสุด ซึ่งแต่ละชั้นการทำงานก็จะแนะนำโปรโตคอล (protocol) คือพิธีการหรือกฏเกณฑ์ต่างๆ ที่กำหนดขึ้นมาเพื่ออำนวยความสะดวกในการติดต่อสื่อสารกัน ก่อนจะอธิบายถึงรายละเอียดต่างๆ ของ OSI ต่อไป ขอให้ทำความเข้าใจความหมายของคำต่างๆที่จะใช้ดังนี้คือ
Entity - หมายถึงอะไรก็ตามที่สามารถรับ - ส่งหรือจัดการข่าวสารได้ อาจเป็นโปรแกรมประยุกต์ ชุดรับส่งแฟ้มหรือระบบจัดการฐานข้อมูล หรืออาจเป็นเทอร์มินัลก็ได้ คู่ entities ที่อยู่บนชั้นเดียวกันของ OSI model แต่เป็นคนละเครื่องนั้น จะเรียกเป็น peer-process
Service - เป็นขอบเขตของหน้าที่บนแต่ละชั้นของ OSI ซึ่งชั้นล่างจะต้องจัดเตรียมไว้ให้ชั้นบน ซึ่งจุดที่ทั้งสองชั้นใช้ติดต่อกันนี้เรียกว่า service access points (SAPs)
Service Primitive - เป็นการติดต่อกันระหว่างชั้นที่ให้บริการกับชั้นที่รับบริการ (ชั้น N กับ N+1 ตามรูป) เมื่อมีการแลกเปลี่ยนข่าวสารกันระหว่างผู้ใช้ 2 คน ที่ขณะใดขณะหนึ่งจะมี service primitive 4 ชนิด เกิดขึ้นคือ
1. Request โดยชั้นที่ใช้บริการ
2.Indicate โดยชั้นที่ให้บริการ
3. Response โดยชั้นที่ใช้บริการ
4.Confirm โดยชั้นที่ให้บริการ
ขอบเขตของหน้าที่สำหรับแต่ละชั้นใน OSI นี้ อาจแบ่งได้เป็น 2 กลุ่มใหญ่ๆ คือ สำหรับ 3 ชั้นล่าง คือ physical, data link และ network นั้น จัดเป็นกลุ่มที่ขึ้นกับเทคโนโลยี่คือจะเกี่ยวข้องกับการส่งผ่านข้อมูล การจัดข้อมูลเข้าชุดหรือหาเส้นทางสำหรับข่าวสารในเครือข่าย เป็นต้น โปรโตคอลในชั้นเหล่านี้จะเกี่ยวข้องกับเทคโนโลยีในการส่งผ่านข้อมูล เช่น สายนำสัญญาณต่างๆ, โทโปโลยี(topologies) คือรูปแบบการจัดวงจรข่ายคอมพิวเตอร์ หรือเทคนิคที่จะใช้ช่องข่าวสารเป็นต้น กล่าวโดยสรุปคือในการทำงานที่ระดับ 3 ชั้นล่างนี้จะเกี่ยวข้องกับปรากฏการณ์ที่เป็นกายภาพ เป็นส่วนของ data communication ซึ่งก็คือ เกี่ยวข้องโดยตรงกับฝ่ายเทคนิคนั่นเอง
สำหรับในชั้นที่ 4 คือ transport นั้น เป็นตัวกลางแยกระหว่าง 3 ชั้นล่างและ 3 ชั้นบน คือ ถ้าจะพิจารณาแยกประเด็นให้ชัดเจน อาจกล่าวได้ว่าสำหรับ 3 ชั้นล่างของ OSI นั้น จะเป็นการสื่อสารข้อมูล ส่วน 3 ชั้นบนเป็นการประมวลผลข้อมูล ส่วนในชั้นที่ 4 (transport) นี้จะจัดการเกี่ยวกับปัญหาความผิดพลาด คือ ตรวจจับและแก้ไขความผิดพลาดที่อาจเกิดขึ้น จัดลำดับของข้อมูล, ทำการระบุตำแหน่งสถานีปลายทาง และ การมัลติเพล็กช์ หน้าที่พื้นฐานที่สำคัญประการหนึ่งของ transport นี้คือ แบ่งซอยข่าวสารชุดยาวๆ จากชั้นบนคือชั้นที่ 5 (session layer) ให้เป็นหน่วยที่เล็กลงเรียกว่า packets
ในชั้นที่ 5 คือ session จะเกี่ยวกับหน้าที่ทางตรรกที่จำเป็นในการโต้ตอบแลกเปลี่ยนข่าวสาร หน้าที่พื้นฐานสำหรับชั้นนี้ คือ นำการบริการจากชั้นที่ 4 ซึ่งเป็นเพียงการย้ายข้อมูลดิบระหว่างเครื่องมาเพิ่มการบริการเพื่อผู้ใช้ขึ้น และทำให้ entity ของชั้นที่ 6 สามารถสร้าง, ใช้และยกเลิกการเชื่อมต่อระหว่างเครื่องได้ การเชื่อมต่อในระดับชั้นที่ 5 นี้ เรียกว่า session กล่าวโดยสรุปคือ ในระดับ session นี้ อาจมองได้ว่าเป็นจุดติดต่อระหว่างผู้ใช้ซึ่งในที่นี้หมายถึงผู้พัฒนาซอฟท์แวร์ กับข่ายวงจรนั่นเอง
ต่อมาในชั้นที่ 6 คือ presentation ตัวอย่างของงานบริการในชั้นนี้ เช่น การเข้ารหัสลับ (encryption) การบีบอัดข้อมูล การส่งถ่ายแฟ้มข้อมูล เป็นต้น และสำหรับในชั้นที่ 7 คือ application นั้นก็เป็นชั้นบนสุดของ OSI model เป็นการใช้งานที่ผู้ใช้จะคุ้นเคยอยู่แล้ว เช่น World Wide Web หรือ การใช้ e-mail เป็นต้น
ตาราง 1.1 มาตรฐานการสื่อสารคอมพิวเตอร์ระบบเปิด (OSI)
|
LAYER |
FUNCTIONS |
||
|
APPLICATION
|
A) |
Common Application Service Elements (CASE) |
|
|
Login, password check, peer-association setups, downline loading, agreement on semantics of information to be exchanged, commitment, concurrency and recovery |
|||
|
B) |
Specific Application-Service Elements (SASE) |
||
|
file transfer, access and management, basic-class and forms-class virtual terminals, message handling , document transfer, job transfer and manipulation, remote job entry, data base access and transfer , queries, insertion and deletion, videotex,teletex and telefax, directory service, virtual terminal service, system management, industry protocols, banking, purchasing, invoicing, credit-checking, word processing, graphics procedures, creation of chart and display color control |
|||
|
PRESENTATION |
establish concrete transfer syntax (bit encodings), data types character sets, text string, data display format , file organization, data compaction, encryption, encoding and decoding, handle pass through of service from session, to application layer |
||
|
SESSION |
Maps address to names (users retain name ), Establishes connections and terminations, Transfer data, Controls dialogue (who speak, when, how long, Half-or-full duplex) ,Synchronizes end user task ,Invoke graceful end abrupt closure |
||
|
TRANSPORT |
Address end user machines without concern for route of message or address machines , enroute between end user machine, Multiplex end user address onto network, End to end error detection and recovery, Monitor quality of service ,Possibly disassemble and reassemble session messages, Handle flow control |
||
|
NETWORK |
set up routes for packet to travel (virtual circuit), Provide datagram service, Address network equipment on packets routes, Divides transport messages into packets, And reassemble them at destination, Control network congestion, Recognizes message priorities and send messages in proper order, Handle internetworking (both connection-oriented and Connection less) |
||
|
DATALINK |
add flags to indicate beginning and end of messages, add error - checking algorithms, make sure that data are not mistaken for flags, provide access methods for local area networks, transfer data reliably across a single link |
||
|
PHYSICAL |
handles voltages and electrical pulses, specifies cables, connectors, and media interface components, provide collision detection for csma/cd access method |
||
นอกจากองค์การระหว่างประเทศเพื่อการทำให้เป็นมาตรฐาน (ISO) แล้ว ยังมีองค์กรอื่นๆ อีก ที่ทำหน้าที่ในการวางมาตรฐาน สำหรับสาขาทางด้านการสื่อสาร ดังตัวอย่างต่อไปนี้
CCITT (International Consultative Committee on Telegraphy and Telephony)
จะให้ข้อแนะนำซึ่งถือเป็นกฏเกณฑ์ ของการสื่อสารในแถบยุโรป สมาชิกขององค์การนี้ เช่น บริษัทเอกชน,องค์กรทางธุรกิจและวิทยาศาสตร์, การไปรษณีย์และโทรเลข ปัจจุบันเปลี่ยนชื่อเป็น ITU -T (International Telecommunicaion Union)
ECMA (European Computer Manufactures Association)
สมาชิกขององค์กรนี้คือกลุ่มบริษัทผู้ผลิตคอมพิวเตอร์ในยุโรป ซึ่งส่วนใหญ่เป็นแถบ ยุโรปตะวันตก
ANSI (American National Standards Institute)
สมาชิกจะเป็นกลุ่มผู้ผลิตคอมพิวเตอร์ ผู้ใช้ และกลุ่มผู้จัดการการสื่อสารใน อเมริกา
NBS (National Bureau Of Standards)
เป็นหน่วยงานรัฐบาลของสหรัฐอเมริกา
EIA (Electronic Industries Association)
กลุ่มผู้ผลิตอุตสาหกรรมอิเลคทรอนิกส์ในอเมริกา
IEEE (Institute Of Electrical And Electronic Engineering)
เป็นสถาบันระหว่างประเทศที่กำหนดมาตรฐานต่างๆทางด้านงานวิศวกรรมไฟฟ้า
สำหรับ ISO เองก็เป็นองค์กรหนึ่งในกลุ่มองค์กรเหล่านี้ และเมื่อได้แยกอธิบายตามแต่ละชั้นการทำงานทั้ง 7 ของ ISO แล้ว จะพบว่าที่ชั้นการทำงานต่างๆ นั้นจะมีมาตรฐานซึ่งกำหนดโดยองค์กรดังกล่าวบรรจุอยู่ เช่นที่ physical layer อาจใช้มาตรฐาน RS 232 ซึ่งกำหนดโดย EIA เป็นต้น
ต่อไปจะยกตัวอย่าง วงจรข่ายคอมพิวเตอร์ซึ่งผลิตออกมาจากกลุ่มบริษัทต่างๆ ซึ่งในแต่ละชั้นการทำงานนั้น แต่ละบริษัทก็จะเลือกใช้โปรโตคอลต่างๆ กัน ตามความเหมาะสมของลักษณะการใช้งาน ซึ่งโปรโตคอลตามแต่ละชั้นนั้น อาจเป็นมาตรฐานที่กำหนดโดยองค์กรต่างๆ ดังกล่าวข้างต้น หรืออาจเป็นมาตรฐานที่บริษัทนั้นๆ ออกแบบขึ้นเองโดยพยายามให้ใกล้เคียงกับคำแนะนำของ OSI ก็ได้ และในบางชั้นของ OSI นั้น จะเห็นว่าระบบของบางบริษัทอาจไม่มีเลยก็ได้ ซึ่งระบบนั้นก็สามารถใช้งานได้ เพียงแต่ไม่เป็นระบบเปิดเท่าที่ควรตามข้อแนะนำของ OSI
บริษัทที่ได้นำเอาแนวคิดแบบระบบเปิดนี้ ไปสร้างและใช้งานอย่างจริงจังได้แก่ GM (General Motors) และ BOEING ได้ออกแบบระบบสำหรับโรงงานเรียกว่า Map (Manufacturing Automation Protocols) ซึ่งจะเหมาะสมกับงานผลิต ส่วน BOEING ได้ออกแบบ TOP (Technical Office Protocols) ซึ่งจะเหมาะสมกับลักษณะงานในสำนักงาน การพิจารณาว่าโปรโตคอลต่างๆ เหมาะสมกับงานลักษณะไหนนั้น จะได้อธิบายในบทต่อๆไป
อีกตัวอย่างที่ควรศึกษาคือ การเปรียบเทียบ OSI กับ Windows NT เนื่องจาก โดยทั่วไป เราจะคุ้นเคยกับ Windows กันมาก และทางบริษัทไมโครซอฟท์เอง ก็พยายามผนวก ความสามารถทางด้านเครือข่ายลงบน Windows NT และยังได้พยายามทำให้เป็นระบบเปิดตามแนวทางของ ISO ด้วย ถึงแม้ว่า จะไม่ได้แบ่งเป็น 7 ชั้นการทำงานเด็ดขาดตาม OSI แต่ก็พอเปรียบเทียบได้เช่นกัน นอกจากนี้ยังมี linux ชึ่งเป็นระบบปฎิบัติการ unix ที่สามารถทำงานได้บนเครื่องคอมพิวเตอร์ส่วนตัว และได้รับความนิยมนำมาใช้งานมากขึ้น ก็เป็นอีกระบบหนึ่งที่น่าจะะได้ศึกษาสถาปัตยกรรมโครงสร้างทางเครือข่ายด้วย
ตาราง 1.2 เปรียบเทียบระบบของบริษัทต่างๆ โดยพิจารณากับ OSI
|
OSI |
XEROX |
IBM-SNA |
DEC-DNA |
DoD |
Novell NETWARE |
|
7. Application |
Clearing House Service; File Transfer; Printer Server |
Transaction Service |
Network Management ,Network Application |
File Transfer Protocol; Virtual Terminal; Voice |
|
|
6.Presentation |
Courrier Protocol |
Presentation Services; Function Management |
NCP(Netware Core Protocol) |
||
|
5. Session |
Data-Flow Control |
Session Control |
- |
NetBIOS |
|
|
4. Transport |
Internet Transport Protocol(ITP) |
Transmission Control |
End-To-End Communication Services |
Transmission Control Protocol(TCP) |
SPX |
|
3. Network |
Internet Datagram Protocol |
Path Control |
Adaptive Routing |
Internet Protocol(IP)1822 For Arpanet |
IPX |
|
2. Datalink |
Ethernet |
Synchronous Data-Link Control(SDLC) |
Digital Data Communication Message Protocol(DDCMP); X-25; Ethernet |
Variable(Network Dependent) |
Ethernet |
|
1. Physical |
Ethernet |
IBM Physical |
DDCMP; X-25; Ethernet |
Variable(Network Dependent) |
Ethernet |
ตาราง 1.3 เปรียบเทียบระบบของบริษัทต่างๆ โดยเทียบกับ OSI
|
Layer |
Standard |
Description |
TOP |
MAP |
||
|
7 |
ISO 8571,ISO 8572,ISO 8831,ISO 8832,ISO 9040,ISO 9041,CCITT X.400 |
File transfer Access andManipulation serviceFTAM protocol,Job Transfer and Manipulation Service,Job Transfer and Manipulation Protocol , Virtual Terminal ServiceVirtual Terminal Protocol ,Message handling (E. Mail) |
FTAM,8571,File Transfer,Management,(ASCII and,Binary,Data only) |
FTAM,8571 |
||
|
6 |
ISO 8822ISO 8823 |
Connection - oriented presentation service ,Connection - oriented presentation protocol |
Null. only provide a logical path for the flow of networkdata and control(ASCII and binary encoding) |
|||
|
5 |
ISO 8326ISO 8327 |
Connection- Oriented session service,Connection- Oriented session protocol |
8327 session kernel, full duplex |
|||
|
4 |
ISO 8072,ISO 8073 |
Connection- Oriented transport service Connection- Oriented transport protocol |
8073 Class 4 |
|||
|
3 |
CCITT,X.25 |
X.25 Layer 3 protocol |
ISO Internet 8473,Connectionless and X.25 Subnetwork Dependent Convergence Protocol(SNDCP) |
|||
|
2 |
ISO 8802,CCITT X.25 |
Local Area Network HDLC/,LAPB data link layer |
logical link control IEEE,802.2 type 1, class 1 |
|||
|
1 |
CCITT,X.21 |
Physical layer digitalInterface |
CSMA/CD(IEEE 802.3)10 Base 5 |
(IEEE 802.4)Token passing Bus. |
||