วันพฤหัสบดีที่ 24 พฤศจิกายน พ.ศ. 2559

การอินเตอร์เฟส

การอินเตอร์เฟส
      
              คือ การลิงค์เชื่อมโยงระหว่าง 2 อุปกรณ์เข้าด้วยกัน โดยอุปกรณ์ที่นำมาลิงค์เพื่อเชื่อมโยงสื่อสารนั้น ไม่จำเป็นต้องมาจากผู้ผลิตรายเดียวกันเสมอไป อาจเป็นอุปกรณ์ต่างยี่ห้อ ต่างผู้ผลิต แต่สามารถนำมาใช้งานร่วมกันได้ ดังนั้นจึงต้องมีการกำหนดมาตรฐานเพื่อเป็นข้อกำหนดเฉพาะของอินเตอร์เฟซนั้นๆ ซึ่งประกอบด้วยข้อกำหนดต่างๆ ดังนี้
          1. ข้อกำหนดทางกลไก ที่กล่าวถึงรูปทรงและขนาดของคอนเน็กเตอร์
          2. ข้อกำหนดทางไฟฟ้า ที่กล่าวถึงความถี่ แอมพลิจูด และเฟสของสัญญาณที่คาดหมายไว้
          3. ข้อกำหนดด้านฟังก์ชันการทำงาน ที่กล่าวถึงสายสัญญาณแต่ละเส้นมีหน้าที่อะไร
          4. ข้อกำหนดด้านขั้นตอนการทำงาน ที่กล่าวถึงการควบคุมจังหวะและขั้นตอนการแลกเปลี่ยนข้อมูล



DTE – DCE อินเตอร์เฟส
          DTE (Data Terminal Equipment) เป็นอุปกรณ์ที่ใช้สำหรับเป็นตัวส่งข้อมูลและตัวรับข้อมูล หรืออาจเป็นทั้งตัวส่งข้อมูลและตัวรับข้อมูลก็ได้ อุปกรณ์ที่ทำหน้าที่ในลักษณะของ DTE มักใช้แทนแหล่งกำเนิดข้อมูลต้นทางแหล่งแรก หรือแหล่งรับข้อมูลปลายทางแหล่งสุดท้าย เช่น คอมพิวเตอร์ (แหล่งกำหนดข้อมูลต้นทาง) หรือเครื่องพิมพ์ (แหล่งรับข้อมูลปลายทาง)
          อุปกรณ์ DTE จะทำหน้าที่แปลงข้อมูลให้อยู่ในรูปแบบของสัญญาณเพื่อใช้สำหรับสื่อสาร เมื่อสัญญาณได้ส่งไปยังอุปกรณ์ DTE ปลายทางที่เป็นฝ่ายรับ ก็จะดำเนินการแปลงสัญญาณที่รับมานั้นให้อยู่ในรูปแบบของข้อมูลเหมือนกับที่ได้ส่งมา
          ข้อเสียของการสื่อสารระหว่างอุปกรณ์ DTE ด้วยกัน คือ มีข้อจ ากัดด้านการส่งผ่านข้อมูลบนระยะทางไกลๆ ดังนั้นหากมีความจำเป็นต้องส่งผ่านข้อมูลระยะไกล จำเป็นต้องพึ่งพาอุปกรณ์ที่เรียกว่า DCE เข้ามาช่วย

     DCE (Data Circuit-terminating Equipment) เป็นอุปกรณ์ที่ใช้เชื่อมต่อระหว่างอุปกรณ์ DTE ในกรณีที่ต้องการสื่อสารระยะไกล โดยปกติหมายถึง โมเด็ม
อุปกรณ์ DCE ทั้งสองฝั่งจะมีการแลกเปลี่ยนสัญญาณบนสายที่ใช้เป็นสื่อกลางส่งข้อมูลหรือเครือข่าย โดยฝั่งรับจะต้องใช้รหัสสัญญาณเดียวกัน รวมถึงอัตราความเร็วของการส่งกระแสไฟฟ้า
อุปกรณ์ DTE-DCE แต่ละคู่ จะต้องได้รับการออกแบบให้สามารถโต้ตอบเพื่อทางานร่วมกันได้ แม้ว่าจะเป็นอุปกรณ์ที่มาจากคนละแหล่งผลิต ดังนั้นจึงมีการกาหนดมาตรฐานอินเตอร์เฟสขึ้น เพื่อให้การเชื่อมต่อสามารถนำมาใช้งานร่วมกันได้อย่างราบรื่นและสะดวก

ข้อกำหนดสาคัญของมาตรฐานอินเตอร์เฟส
คุณลักษณะของมาตรฐานอินเตอร์เฟสประกอบด้วยข้อกาหนดสาคัญ 4 ประการ คือ
1. ข้อกำหนดทางกลไก (Mechanical Specification)
เป็นข้อกำหนดทางกายภาพที่ใช้กำหนดรายละเอียดของปลั๊กหรือคอนเน็กเตอร์ที่ใช้สำหรับเชื่อมต่อ ว่ามีรูปทรงและขนาดของคอนเน็กเตอร์เป็นแบบใด มีหัวเข็มจานวนกี่หัว เพื่อให้ผู้ผลิตสามารถผลิตตามมาตรฐานและนำไปเชื่อมต่อสื่อสารกันได้ โดยคอนเน็กเตอร์หรือปลั๊กจะมีทั้งแบบตัวผู้และตัวเมีย และข้อกำหนดทางกลไกนี้จะแสดงถึงการเชื่อมต่อทางกายภายที่แท้จริงระหว่างอุปกรณ์ DTE และ DCE

2. ข้อกำหนดทางไฟฟ้า (Electrical Specification)
เป็นข้อกำหนดเกี่ยวกับระดับสัญญาณเพื่อใช้แทนข้อมูลไบนารี 1 หรือ 0 ระดับสัญญาณตั้งแต่ระดับใดถึงระดับใดจะใช้แทนข้อมูล 1 หรือ 0 โดยทั้งอุปกรณ์ DTE และ DCE จะต้องใช้รูปแบบการเข้ารหัสชนิดเดียวกัน เช่น การเข้ารหัสแบบ NRZ-L ทั้งนี้ข้อกำหนดทางไฟฟ้ายังเกี่ยวข้องกับอัตราข้อมูล (Data Rate) ซึ่งแทนอัตราความเร็วในการรับส่งสัญญาณและระยะทางเป็นสำคัญ

3. ข้อกำหนดด้านฟังก์ชันการทางาน (Functional Specification)
เป็นข้อกำหนดเกี่ยวข้องกับสายสัญญาณที่ใช้เชื่อมต่อระหว่างอุปกรณ์ DTE และ DCE โดยแต่ละหัวเข็มจะส่งสัญญาณอะไรบ้าง ซึ่งจะปฏิบัติสิ่งที่ได้รับมอบหมายไว้ในวงจรการแลกเปลี่ยนข้อมูลของแต่ละวงจร ที่มีการจัดแบ่งหมวดหมู่ในส่วนของข้อมูล (Signal Circuit) การควบคุม (Control Circuit) เวลา (Timing Circuit) และอิเล็กทริคัลกราวด์ (Electrical Ground)

4. ข้อกำหนดด้านขั้นตอนการทำงาน (Procedural Specification)
เป็นข้อกำหนดที่เกี่ยวข้องกับขั้นตอนและกระบวนการที่ใช้สาหรับติดต่อสื่อสารระหว่างอุปกรณ์ DTE และ DCE ว่ามีขั้นตอนการติดต่อสื่อสารกันอย่างไร มีการควบคุมจังหวะและการแลกเปลี่ยนข้อมูลกันอย่างไร




อินเตอร์เฟส EIA-232 หรือ RS-232
        EIA-232 เป็นอินเตอร์เฟสที่ใช้สาหรับเชื่อมต่ออุปกรณ์ DTE และ DCE ซึ่งเดิมเรียกว่า RS-232
EIA-232 ได้ผ่านการปรับปรุงและพัฒนามาหลายครั้ง จนกระทั่งปี ค.ศ. 1969 ได้มีการประดิษฐ์เวอร์ชัน 3 ขึ้นมา คือ EIA-232C และได้นาไปประกาศใช้เป็นมาตรฐานบนเครื่องพีซีคอมพิวเตอร์ตั้งแต่นั้นมา


ต่อมาปี ค.ศ. 1987 ได้มีเวอร์ชัน EIA-232D ซึ่งได้ปรับปรุงโดยเพิ่ม test lines จานวน 3 เส้นเข้าไป และปัจจุบันพัฒนามาจนถึงเวอร์ชัน 6 คือ EIA-232F
อินเตอร์เฟส EIA-232F ได้นามาตรฐานย่อยๆ ต่างมารวมเข้าด้วยกัน ซึ่งข้อกำหนดต่างๆ ได้นำมาจากมาตรฐานต่างๆ ดังนี้
1. ข้อกำหนดทางไฟฟ้า ได้นามาตรฐาน ITU v.28 มาใช้
2. ข้อกำหนดทางกลไก ได้นามาตรฐาน ISO 2110 มาใช้
3. ข้อกำหนดด้านฟังก์ชันการทางานและขั้นตอนการทำงาน ได้นามาตรฐาน ITU v.24 มาใช้

คุณลักษณะของอินเตอร์เฟส EIA-232/RS-232
    EIA-232 แบบเดิมเป็นแบบ 25 หัวเข็มสาหรับปลั๊กตัวผู้ และแบบ 25 ซ็อกเก็ตสาหรับปลั๊กตัวเมีย โดยมาตรฐานนี้จะครอบคลุมข้อกำหนดทั้ง 4 ประการ คือ
1. ข้อกำหนดทางกลไก
เป็นส่วนทางกายภาพของปลั๊ก EIA-232 ที่ใช้เชื่อมต่อ เป็นคอนเน็กเตอร์แบบ 25 เข็ม (DB-25) ในปัจจุบันส่วนใหญ่เปลี่ยนมาเป็นแบบ 9 หัวเข็มแล้ว




2. ข้อกำหนดทางไฟฟ้า
เป็นข้อกำหนดที่เกี่ยวข้องกับรายละเอียดของสัญญาณไฟฟ้า เกี่ยวกับสัญญาณระหว่างอุปกรณ์ DTE และ DCE สัญญาณดิจิตอลที่ใช้จะมีทั้งสายกราวด์ แรงดันไฟฟ้าลบที่น้อยกว่า -3 โวลด์ (-3 ถึง -15) เพื่อใช้ในการแปลไบนารี 1 และแรงดันไฟฟ้าบวกที่มากกว่า 3 โวลด์ (3 ถึง 15) เพื่อใช้ในการแปลไบนารี 0 โดยจะยอมรับสัญญาณที่อยู่ในช่วงตั้งแต่ 2 โวลด์ทั้งบวกและลบ พื้นที่ที่จัดเป็น Undefined Area หรือ Dead Area จะอยู่ระหว่าง +3 ถึง -3 โวลด์
ในการเชื่อมต่อจะใช้ความเร็วในการถ่ายโอนข้อมูลน้อยกว่า 20 Kbps สำหรับความยาวของสายสัญญาณจะถูกจากัดระยะทางโดยต้องน้อยกว่า 15 เมตร หรือ 50 ฟุต อย่างไรก็ตามการเพิ่มความเร็วและระยะทางสามารถทำได้ หากได้รับการออกแบบที่ดี





3. ข้อกำหนดด้านฟังก์ชันการทำงาน
เป็นข้อกำหนดที่สาคัญที่สุด โดยเป็นการกำหนดหน้าที่การทางานเฉพาะให้กับหัวเข็มแต่ละหัว
4. ข้อกำหนดด้านขั้นตอนการทำงาน
เป็นรายละเอียดที่เกี่ยวข้องกับกระบวนการติดต่อสื่อสาร และขั้นตอนการทำงาน รวมถึงการควบคุมจังหวะและขั้นตอนการแลกเปลี่ยนข้อมูล
ชื่อของสัญญาณ EIA จะมีการแบ่งกลุ่มของสัญญาณออกเป็น 5 กลุ่มด้วยกัน เพื่อแสดงถึงความแตกต่างในแต่ละวงจร โดยที่
A –Ground (Common Circuit)
B –Data (Signal Circuit)
C –Control (Control Circuit)
D –Timing (Timing Circuit)
S –Secondary Channel 

สายกราวด์
เซอร์กิต AB (pin 7)เป็น Signal Ground ระหว่างอุปกรณ์ DTE และ DCE ซึ่งอาจเรียกว่าเป็น Protective Ground ที่ช่วยป้องกันการช็อกทางไฟฟ้า (Electric Shock)

การถ่ายโอนข้อมูล (Data Transfer)
เซอร์กิต BA (pin 2) / Transmitted Dataเป็นสัญญาณที่ใช้สาหรับการส่งข้อมูลจากอุปกรณ์ DTE ไปยังอุปกรณ์ DCE โดยสถานะทางลอจิกจะมีค่าเท่ากับ 1 เมื่อไม่มีการส่งข้อมูลใดๆ
เซอร์กิต BB (pin 3) / Received Dataเป็นสัญญาณที่ใช้สาหรับรับข้อมูลจากอุปกรณ์ DCE ไปยังอุปกรณ์ DTE โดยสถานะทางลอจิกจะมีค่าเท่ากับ 1 เมื่อไม่มีการส่งข้อมูลใดๆ

การโต้ตอบกัน (Handshaking)
เซอร์กิต CA (pin 4) / Request to Send เป็นสัญญาณจากอุปกรณ์ DCE เพื่อให้รับรู้ว่าเตรียมพร้อมแล้วที่จะส่งข้อมูล ซึ่งสัญญาณนี้จะใช้งานควบคู่กับเซอร์กิต CB
เซอร์กิต CB (pin 5) / Clear to Sendเป็นสัญญาณตอบรับจากอุปกรณ์ DCE ที่ส่งให้กับอุปกรณ์ DTE ว่าพร้อมรับข้อมูลจากอุปกรณ์ DTE แล้ว

การควบคุม (ใช้สาหรับควบคุมโมเด็ม)
เซอร์กิต CC (pin 6) / DCE Ready เป็นสัญญาณจากอุปกรณ์ DCE ที่บอกกับฝ่ายส่งว่า อุปกรณ์ DCE อยู่ในสภาวะพร้อมที่จะส่งข้อมูลไปยังปลายทางที่ได้ทาการเชื่อมต่อ กล่าวคือ โมเด็มจะมีการสร้างการเชื่อมต่อกับโมเด็มระยะไกลของอีกฝ่ายหนึ่ง เพื่อส่งผ่านข้อมูลระหว่างกัน
เซอร์กิต CF (pin 8) / Carrier Detectเป็นสัญญาณจากอุปกรณ์ DCE ว่าได้รับการตอบรับสัญญาณจากอุปกรณ์ทางไกลของอีกฝั่งหนึ่งแล้ว
เซอร์กิต CD (pin 20) / Data Terminal Ready (DTE Ready)เป็นสัญญาณจากอุปกรณ์ DTE ว่าพร้อมแล้วที่จะทำงาน

นัลโมเด็ม (Null Modem)
    การเชื่อมต่อแบบนัลโมเด็ม เป็นการเชื่อมต่อในลักษณะ DTE-to-DTE โดยปราศจากอุปกรณ์ DCE เช่น การเชื่อมต่อคอมพิวเตอร์สองเครื่องในระยะทางใกล้ๆ (ต้องมีระยะทางไม่เกิน 50 ฟุต) ด้วยอินเตอร์เฟส EIA-232 เป็นการเชื่อมต่อโดยตรงระหว่างอุปกรณ์ รวมถึงสื่อสารกันด้วยสัญญาณดิจิตอล ดังนั้นจึงไม่จาเป็นต้องใช้โมเด็มในการมอดูเลตสัญญาณเพื่อส่งไปตามสายโทรศัพท์


จากรูปเป็นการเชื่อมต่อระยะไกลด้วยการใช้โครงข่ายโทรศัพท์ อุปกรณ์ DTE ทั้งสองฝั่งจะแลกเปลี่ยนข้อมูลกันผ่านอุปกรณ์ DCE โดยแต่ละ DTE จะส่งข้อมูลของตนผ่าน pin 2 (Transmitted Data : TD) และ DCE ก็จะรับข้อมูลจาก pin 2 ซึ่งแต่ละ DTE ที่เป็นฝ่ายรับจะรับข้อมูลผ่าน pin 3 (Received Data : RD) ของ DCE เพื่อส่งผ่านไปยัง pin 3 ของ DTE
         การสื่อสารจะเริ่มจากการใช้ pin 2 ในการส่งข้อมูลออกไปจาก DTE และ pin 3 ก็จะเป็นฝ่ายรับ โดยมีอุปกรณ์ DCE ทาหน้าที่เป็นตัวกลางรับการเชื่อมต่อโดยตรงของสัญญาณและผ่านไปตามเซอร์กิตต่างๆ ที่ได้กำหนดไว้






จากรูปเป็นการเชื่อมต่อระยะไกลด้วยการใ
         โดยทั่วไปเครื่องพีซีจะอ้างถึงสัญญาณ RTS (Request to Send) ถ้าพร้อมที่จะรับข้อมูล และอุปกรณ์ DCE อย่างโมเด็ม ก็จะอ้างถึงสัญญาณ CTS (Clear to Send) เมื่อได้รับข้อมูล ดังนั้นการเชื่อมต่อสาย RTS จาก DTE หนึ่งไปยัง CTS ของอีก DTE หนึ่ง จึงเป็นการจาลองให้เกิดการตรวจสอบสัญญาณโต้ตอบ (Handshake) กันได้ โดยหากฝ่ายรับไม่พร้อม ก็จะไม่มีสัญญาณ RTS ส่งออกมา
สำหรับซอฟต์แวร์ที่ใช้สำหรับการสื่อสาร เมื่อมีการเชื่อมต่อคอมพิวเตอร์สองเครื่องด้วยสายนัลโมเด็ม ได้แก่ โปรแกรม laplink, Norton Commander และ FileVan
ข้อสังเกตประการหนึ่ง คือ สายเคเบิลที่ใช้เชื่อมต่อตามมาตรฐาน EIA-232 ในรูปแบบ DTE-DTE หรือนัลโมเด็มนั้น คอนเน็กเตอร์ของปลายสายทั้งสองด้าน จะเป็นคอนเน็กเตอร์แบบตัวผู้ที่ใช้เสียบเข้ากับพอร์ตขนานบนเครื่องพีซี

อินเตอร์เฟสความเร็วสูง (High speed Interface Protocol)
    คอมพิวเตอร์ในปัจจุบันได้มีการออกแบบให้สามารถรองรับอินเตอร์เฟสใหม่ๆ ที่มีความยืดหยุ่นสูง รับส่งข้อมูลที่รวดเร็ว และสนับสนุนอุปกรณ์ต่างๆ มากมาย ไม่เฉพาะแต่โมเด็ม เช่น เครื่องสแกนเนอร์ กล้องวีดีโอดิจิตอล กล้องดิจิตอล โดยเชื่อมต่อผ่านพอร์ด FireWire และ USB
FireWire เป็นชื่อจดทะเบียนการค้าของบริษัทแอปเปิล
ที่พัฒนาขึ้นเมื่อปี ค.ศ. 1990 หรืออาจเรียกว่า i-Link โดย
FireWire เป็นอินเตอร์เฟสที่เป็นไปตามมาตรฐาน IEEE 1394 (High Performance Serial Bus) และเป็นสายส่งข้อมูลดิจิตอลความเร็วสูงที่มีคอนเน็กเตอร์ทั้งแบบ 4 pin และ 6 pin


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




จากรูปคือสายภายในแบบ 6 pin ซึ่งประกอบด้วยสายสัญญาณ
6 เส้น โดยที่
-สายสัญญาณ Power จานวน 2 เส้น นำไปใช้งานสำหรับ
ส่งกำลังไฟฟ้าขนาด 8-40 โวลต์ ไปยังอุปกรณ์
-สายสัญญาณคู่ที่ 1 จะส่งข้อมูลสัญญาณบวก (Positive) เข้ารหัสแบบ NRZ-L
-สายสัญญาณคู่ที่ 2 จะส่งข้อมูลสัญญาณลบ (Negative) ที่เข้ารหัสแบบ NRZ-L
สายสัญญาณคู่แรกจะถูกนำไปใช้เพื่อการส่งข้อมูล ส่วนสายสัญญาณคู่ที่สองจะนำไปใช้สำหรับส่งสัญญาณนาฬิกาอย่างต่อเนื่อง เพื่อลดโอกาสในการเกิดข้อผิดพลาด ซึ่งจะช่วยลดระดับสัญญาณรบกวนลงได้ และส่งผลต่อสัญญาณที่ส่งผ่านไปนั้นมีความรวดเร็ว และไม่มีข้อผิดพลาด
ระยะแรก FireWire ถูกนำมาใช้ในเครื่องแอปเปิลแมคอินทอช แต่ปัจจุบันอุปกรณ์พวกคอมพิวเตอร์โน้ตบุค กล้องดิจิตอล ได้มีการนำพอร์ต FireWire มาใช้ โดยตามมาตรฐาน IEEE-1394a จะมีอัตราความเร็วในการส่งผ่านข้อมูลที่ 400 Mbps ส่วน IEEE-1394b จะมีอัตราความเร็วในการส่งผ่านข้อมูลที่ 800 Mbps และยังสามารถขยายอัตราความเร็วได้สูงสุดที่ 3.2 Gbpsซึ่งสามารถนำไปใช้ในการตัดต่อวีดีโอ งานสตูดิโอ ที่สาคัญพอร์ต FireWire มีขนาดเล็ก ทำให้ไม่สิ้นเปลืองเนื้อที่ อีกทั้งยังสนับสนุนคุณสมบัติ Plug and Play รวมถึง Hot Plug ที่สามารถถอดอุปกรณ์เพื่อยกเลิกการเชื่อมต่อได้ทันที ถึงแม้ว่าบัสยังคงทางานอยู่

USB (Universal Serial Bus)
            USB เป็นมาตรฐานใหม่สำหรับการเชื่อมต่อระหว่างคอมพิวเตอร์กับโมเด็ม และอุปกรณ์ต่างๆ ซึ่งปัจจุบันจะเป็นพอร์ต USB ทั้งสิ้น เช่น เมาส์ คีย์บอร์ด โดย USB เป็นอินเตอร์เฟสที่สร้างความสะดวก และความยืดหยุ่นต่อผู้ใช้งาน และยังสนับสนุนการทำงานแบบ plug and play อีกด้วย
ในส่วนของสาย USB ที่ใช้เชื่อมต่อ จะมีหัวเสียบโฮสต์ (Host End) และหัวเสียบอุปกรณ์ (Device End) ซึ่งหัวเสียบทั้งสองจะมีรูปแบบคอนเน็กเตอร์ที่แตกต่างกัน
ข้อเสียของ USB คือ การรับส่งข้อมูลที่มีความเร็วต่า โดย USB เวอร์ชั่น 1.1 จะมีความเร็วในการถ่ายโอนข้อมูลเพียง 12 Mbps แต่ปัจจุบัน USB เวอร์ชั่น 2.0 (High Speed USB) ได้พัฒนาความเร็วในการถ่ายโอนข้อมูลให้สูงขึ้น โดยความเร็วสูงสุดอยู่ที่ 480 Mbps และยังสามารถใช้งานร่วมกับพอร์ต USB เวอร์ชั่น 1.1 ได้ด้วย



   เมื่อเปรียบเทียบกับ FireWire ตามมาตรฐาน 1394a ที่มีความเร็ว 400 Mbps จะเห็นว่า FireWire สามารถทำงานด้วยอัตราความเร็วเหนือกว่า เนื่องจากซอฟต์แวร์ต่างๆ ที่ใช้งานในปัจจุบันสามารถดึงศักยภาพของ FireWire ออกมาใช้ได้เต็มประสิทธิภาพมากกว่า
ภายในสายเคเบิลของ USB จะประกอบด้วยสายสัญญาณจำนวน 4 เส้น โดยชื่อที่กำกับไว้ในสัญญาณแต่ละเส้นจะมีหน้าที่ดังต่อไปนี้
-GND คือ สายกราวด์
-VBUS คือ สายสัญญาณที่ส่งกาลังไฟฟ้าขนาด 5 โวลด์ไปยังอุปกรณ์
-D+ คือ สายส่งข้อมูลสัญญาณบวก (Positive) ที่มีการเข้ารหัสแบบ NRZ-L
-D-คือ สายส่งข้อมูลสัญญาณลบ (Negative) ที่มีการเข้ารหัสแบบ NRZ-Lพร้อมกับกาหนดระยะวัดของสัญญาณลบเพื่อลดการแทรกแซงของสัญญาณรบกวนและข้อผิดพลาด



อ้างอิง
http://tanawat06.blogspot.com/



arduino ตรวจจับควัน


Dust Sensor (ตรวจจับควันและฝุ่นละออง) 

                Dust Sensor เป็น Sensor ใช้สำหรับตรวจจับควันและฝุ่นละอองในอากาศ ค่าที่ได้ออกมาเป็น Analog 1-1023 ลักษณะการทำงานคือ Sensor จะส่งแสงเลเซอร์ ไปกระทบกับตัวรับ และให้อากาศผ่านในช่อง หากการรับแสงมีน้อยแสดงว่าฝุ่นละออกเยอะ หากมีการรับแสงได้มากแสดงว่าฝุ่นละอองน้อย สามารถวัด ควันธูป แป้ง ฝุ่น ได้ นำไปประยุคใช้กับ Air purifier, Air conditioner, Air monitor

ในหนึ่งชุดประกอบด้วย

Dust Sensor Sharp GP2Y1010AU0F 1 ตัว
สายไฟ  1 ชุด
ตัวต้านทาน 150ohm   1 ตัว
ตัวเก็บประจุ  16v220uF 1 ตัว

ตัวอย่างโค้ด

int measurePin = A1;

int ledPower = 12;

int samplingTime = 280;

int deltaTime = 40;

int sleepTime = 9680;

int voMeasured = 0;

float calcVoltage = 0;

float dustDensity = 0;

int totalvoMeasured = 0;

float totaldustDensity = 0;



#include <Arduino.h>

#include <TM1637Display.h>



// Module connection pins (Digital Pins)

#define CLK 2

#define DIO 3



// The amount of time (in milliseconds) between tests

#define TEST_DELAY   2000



TM1637Display display(CLK, DIO);



void setup()



{



  Serial.begin(9600);

  pinMode(ledPower,OUTPUT);

 display.setBrightness(0xF);

 uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };

 display.setSegments(data);

 pinMode(4, OUTPUT);

 pinMode(5, OUTPUT);

 pinMode(6, OUTPUT);

}







void loop()



{



for (int i=1; i <= 10; i++){



  digitalWrite(ledPower,LOW); // power on the LED

  delayMicroseconds(samplingTime);

  voMeasured = analogRead(measurePin); // read the dust value

  delayMicroseconds(deltaTime);

  digitalWrite(ledPower,HIGH); // turn the LED off

  delayMicroseconds(sleepTime);



  calcVoltage = voMeasured * (3.3 / 1024);



/*  if(voMeasured<=85){       //ตั้งค่า

  voMeasured = 0;

  }

  else{

    voMeasured = voMeasured-85;

  }*/



  voMeasured = map(voMeasured, 80, 418, 0, 100);



if(voMeasured<=0){

    voMeasured = 0;

  }

 

  dustDensity = 0.17 * calcVoltage - 0.1;

  totalvoMeasured = voMeasured+totalvoMeasured;

  totaldustDensity = dustDensity+totaldustDensity;

  delay(100);



}

  totalvoMeasured = totalvoMeasured/10;

  totaldustDensity = totaldustDensity/10;

  Serial.print("Raw Signal Value (0-100): ");

  Serial.print(totalvoMeasured);

  Serial.print(" - Dust Density: ");

  Serial.println(totaldustDensity);



  uint8_t segto;

  display.showNumberDec(totalvoMeasured);     //แสดง ใน 7 segment

  delay(500);



  if(totalvoMeasured <= 40){

    digitalWrite(4, LOW);

    digitalWrite(5, LOW);

    digitalWrite(6, LOW);

    }

  else if (totalvoMeasured <= 60){

    digitalWrite(4, HIGH);

    digitalWrite(5, LOW);

    digitalWrite(6, LOW);

    }

  else if (totalvoMeasured <= 80){

    digitalWrite(4, LOW);

    digitalWrite(5, HIGH);

    digitalWrite(6, LOW);

    }

  else{

    digitalWrite(4, LOW);

    digitalWrite(5, LOW);

    digitalWrite(6, HIGH);

    }



 

  totalvoMeasured = 0;

  totaldustDensity = 0;

  delay(500);





}

ข้อมูลเพิ่มเติม

datasheets : https://www.sparkfun.com/datasheets/Sensors/gp2y1010au_e.pdf



อ้างอิง

https://www.9arduino.com/

วันพุธที่ 2 พฤศจิกายน พ.ศ. 2559

ระบบคอมพิวเตอร์และโครงสร้างของระบบปฏิบัติการ

ระบบคอมพิวเตอร์
               คือ กลุ่มของคอมพิวเตอร์และอุปกรณ์คอมพิวเตอร์ที่ถูกนำมาเชื่อมต่อกันผ่านอุปกรณ์ด้านการสื่อสารหรือสื่ออื่นใด ทำให้ผู้ใช้ในระบบเครือข่ายสามารถติดต่อสื่อสารแลกเปลี่ยนและใช้อุปกรณ์ต่าง ๆ ของเครือข่ายร่วมกันได้

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


ประเภทของคอมพิวเตอร์

1.ซูเปอร์คอมพิวเตอร์ (supercomputer)ซูเปอร์คอมพิวเตอร์ ถือได้ว่าเป็นคอมพิวเตอร์ที่มีความเร็วมาก และมีประสิทธิภาพสูงสุดเมื่อเปรียบเทียบกับคอมพิวเตอร์ชนิดอื่น ๆ เครื่องซูเปอร์คอมพิวเตอร์มีราคาแพงมาก มีขนาดใหญ่ สามารถคำนวณทางคณิตศาสตร์ได้หลายแสนล้านครั้งต่อวินาที และได้รับการออกแบบ เพื่อให้ใช้แก้ปัญหาขนาดใหญ่มากทางวิทยาศาสตร์และทางวิศวกรรมศาสตร์ได้อย่างรวดเร็ว เช่น การพยากรณ์อากาศล่วงหน้าเป็นเวลาหลายวัน การศึกษาผลกระทบของมลพิษกับสภาวะแวดล้อมซึ่งหากใช้คอมพิวเตอร์ชนิดอื่นๆ แก้ไขปัญหาประเภทนี้ อาจจะต้องใช้เวลาในการคำนวณหลายปีกว่าจะเสร็จสิ้น ในขณะที่ซูเปอร์คอมพิวเตอร์สามารถแก้ไขปัญหาได้ภายในเวลาไม่กี่ชั่วโมงเท่านั้น เนื่องจากการแก้ปัญหาใหญ่ ๆ จะต้องใช้หน่วยความจำสูง ดังนั้น ซูเปอร์คอมพิวเตอร์จึงมีหน่วยความจำที่ใหญ่มาก ซูเปอร์คอมพิวเตอร์มีหลายประเภท ตั้งแต่รุ่นที่มีหน่วยประมวลผล (processing unit) 1 หน่วย จนถึงรุ่นที่มีหน่วยประมวลผลหลายหมื่นหน่วยซึ่งสามารถทำงานหลายอย่างได้พร้อม ๆ กัน

2.เมนเฟรมคอมพิวเตอร์ (mainframe computer)เมนเฟรมคอมพิวเตอร์ มีสมรรถภาพที่ต่ำกว่าซูเปอร์คอมพิวเตอร์มาก แต่ยังมีความเร็วสูง และมีประสิทธิภาพสูงกว่ามินิคอมพิวเตอร์หรือไมโครคอมพิวเตอร์ เมนเฟรมคอมพิวเตอร์สามารถให้บริการผู้ใช้จำนวนหลายร้อยคนพร้อม ๆ กัน ฉะนั้น จึงสามารถใช้โปรแกรมจำนวนนับร้อยแบบในเวลาเดียวกันได้ โดยเฉพาะถ้าต่อเครื่องเข้าเครือข่ายคอมพิวเตอร์ ผู้ใช้สามารถใช้ได้จากทั่วโลก ปัจจุบัน องค์กรใหญ่ๆ เช่น ธนาคาร จะใช้คอมพิวเตอร์ประเภทนี้ในการทำบัญชีลูกค้า หรือการให้บริการจากเครื่องฝากและถอนเงินแบบอัตโนมัติ (automatic teller machine) เนื่องจากเครื่องเมนเฟรมคอมพิวเตอร์ได้ถูกใช้งานมากในการบริการผู้ใช้พร้อม ๆ กัน เมนเฟรมคอมพิวเตอร์จึงต้องมีหน่วยความจำที่ใหญ่มาก

3.มินิคอมพิวเตอร์ (minicomputer)มินิคอมพิวเตอร์ คือ เมนเฟรมคอมพิวเตอร์ขนาดเล็ก ๆ ซึ่งสามารถบริการผู้ใช้งานได้หลายคนพร้อม ๆ กัน แต่จะไม่มีสมรรถภาพเพียงพอที่จะบริการผู้ใช้ในจำนวนที่เทียบเท่าเมนเฟรมคอมพิวเตอร์ได้ จึงทำให้มินิคอมพิวเตอร์เหมาะสำหรับองค์กรขนาดกลาง หรือสำหรับแผนกหนึ่งหรือสาขาหนึ่งขององค์กรขนาดใหญ่เท่านั้น

4.ไมโครคอมพิวเตอร์ (microcomputer) หรือ พีซี (personal computer หรือ PC)ไมโครคอมพิวเตอร์ คือ คอมพิวเตอร์ขนาดเล็กแบบขนาดตั้งโต๊ะ (desktop computer) หรือขนาดเล็กกว่านั้น เช่น ขนาดสมุดบันทึก (notebook computer) และขนาดฝ่ามือ (palmtop computer) ไมโครคอมพิวเตอร์ได้เริ่มมีขึ้นในปีพ.ศ. 2518 ถึงแม้ว่าในระยะหลัง เครื่องชนิดนี้จะมีประสิทธิภาพที่สูง แต่เนื่องจากมีราคาไม่แพงและมีขนาดกระทัดรัด ไมโครคอมพิวเตอร์จึงยังเหมาะสำหรับใช้ส่วนตัว ไมโครคอมพิวเตอร์ได้ถูกออกแบบสำหรับใช้ที่บ้าน โรงเรียน และสำนักงานสำหรับที่บ้าน เราสามารถใช้ไมโครคอมพิวเตอร์ในการทำงบประมาณรายรับรายจ่ายของครอบครัวช่วยทำการบ้านของลูกๆ การค้นคว้าข้อมูลและข่าวสาร การสื่อสารแบบอิเล็กทรอนิกส์ (electronic mail หรือ E - mail) หรือโทรศัพท์ทางอินเทอร์เน็ต (internet phone) ในการติดต่อทั้งในและนอกประเทศ หรือแม้กระทั่งทางบันเทิง เช่น การเล่นเกมบนเครื่องไมโครคอมพิวเตอร์ สำหรับที่โรงเรียน เราสามารถใช้ไมโครคอมพิวเตอร์ในการช่วยสอนนักเรียนในการค้นคว้าข้อมูลจากทั่วโลกสำหรับที่สำนักงาน เราสามารถใช้ไมโครคอมพิวเตอร์ในการช่วยพิมพ์จดหมายและข้อมูลอื่นๆ เก็บและค้นข้อมูล วิเคราะห์และทำนายยอดซื้อขายล่วงหน้า

5.โน้ตบุ๊ค (notebook or laptop)โน้ตบุ๊ค คือ คอมพิวเตอร์ที่มีขนาดเล็กกว่าไมโครคอมพิวเตอร์ ถูกออกแบบไว้เพื่อนำติดตัวไปใช้ตามที่ต่างๆ มีขนาดเล็ก และน้ำหนักเบา ในปัจจุบันมีขนาดพอๆกับสมุดที่ทำด้วยกระดาษ

องค์ประกอบของระบบคอมพิวเตอร์


คอมพิวเตอร์ทำงานอย่างเป็นระบบ (System) หมายถึงภายในระบบงานคอมพิวเตอร์ ประกอบด้วยองค์ประกอบย่อยที่มีหน้าที่เฉพาะ ทำงานประสานสัมพันธ์กัน เพื่อให้งานบรรลุตามเป้าหมาย ในระบบงานคอมพิวเตอร์
การที่มีเครื่องคอมพิวเตอร์เพียงอย่างเดียว จะยังไม่สามารถทำงานได้ด้วยตัวเอง ซึ่งหากจะให้คอมพิวเตอร์ทำงานได้อย่างเป็นระบบและมีประสิทธิภาพแล้ว ระบบคอมพิวเตอร์ควรจะประกอบไปด้วยองค์ประกอบคือ บุคลากร (Peopleware) ฮาร์ดแวร์ (Hardware) ซอฟต์แวร์ (Software)   ข้อมูล(Data) สารสนเทศ(Information)     และกระบวนการทำงาน ( Procedure )
1.   ฮาร์ดแวร์ ( Hardware ) ฮาร์ดแวร์เป็นองค์ประกอบของตัวเครื่องที่สามารถจับต้องได้ ได้แก่ วงจรไฟฟ้า ตัวเครื่อง จอภาพ เครื่องพิมพ์ คีร์บอร์ด เป็นต้นซึ่งสามารถแบ่งส่วนพื้นฐานของฮาร์ดแวร์เป็น 4 หน่วยสำคัญ 
1.1 หน่วยรับข้อมูลหรืออินพุต ( Input Unit) ทำหน้าที่รับข้อมูลและโปรแกรมเข้า เครื่อง มีโครงสร้างดังรูป 1.3 ได้แก่ คีย์บอรืดหรือแป้นพิมพ์ เมาส์ เครื่องสแกน เครื่องรูดบัตร Digitizer เป็นต้น
1.2 ระบบประมวลผลกลางหรือซีพียู (CPU : Central Processing Unit) ทำหน้าที่ในการทำงานตามคำสั่งที่ปรากฏอยู่ในโปรแกรม ปัจจุบันซีพียูของเครื่องพีซี รู้จักในนามไมโครโปรเซสเซอร์ ( Micro Processor) หรือ Chip เช่นบริษัท Intel คือ Pentium หรือ Celelon ส่วนของบริษัท AMD คือ K6,K7(Athlon) เป็นต้น  ไมโครโปรเซสเซอร์ มีหน้าที่ในการประมวลผลข้อมูล ในลักษณะของการคำนวณและเปรียบเทียบ โดยจะทำงานตามจังหวะเวลาที่แน่นอน เรียกว่าสัญญาณ Clock เมื่อมีการเคาะจังหวะหนึ่งครั้ง ก็จะเกิดกิจกรรม 1 ครั้ง เราเรียกหน่วย ที่ใช้ในการวัดความเร็วของซีพียูว่า “เฮิร์ท”(Herzt) หมายถึงการทำงานได้กี่ครั้งในจำนวน 1 วินาที เช่น ซีพียู Pentium4 มีความเร็ว 2.5 GHz หมายถึงทำงานเร็ว 2,500 ล้านครั้ง ในหนึ่งวินาที กรณีที่สัญญาณ Clock เร็วก็จะทำให้คอมพิวเตอร์เครื่องนั้น มีความเร็วสูง  และ ซีพียูที่ทำงานเร็วมาก ราคาก็จะแพงขึ้นมากตามไปด้วย
1.3 หน่วยเก็บข้อมูล ( Storage ) ซึ่งสามารถแยกตามหน้าที่ได้เป็น 2 ลักษณะ คือ
        1.3.1  หน่วยเก็บข้อมูลหลักหรือความจำหลัก ( Primary Storage หรือ Main Memory ) ทำหน้าที่เก็บโปรแกรมหรือข้อมูลที่รับมาจากหน่วยรับข้อมูลเพื่อเตรียมส่งให้หน่วยประมวลผลกลางทำการประมวลผล และรับผลลัพธ์ที่ได้จากการประมวลผลเพื่อส่งออกหน่วยแสดงข้อมูลต่อไปซึ่งอาจแยกได้เป็น 2 ประเภท คือ RAM ( Random Access Memory ) ที่สามารถอ่านและเขียนข้อมูลได้ในขณะที่เปิดเครื่องอยู่ แต่เมื่อปิดเครื่องข้อมูลใน RAM จะหายไป และ ROM ( Read Only Memory ) จะอ่านได้อย่างเดียว เช่น  BIOS (Basic Input Output system)  โปรแกรมฝังไว้ใช้ตอนสตาร์ตเครื่อง  เพื่อเครื่องคอมพิวเตอร์เริ่มต้นทำงาน เป็นต้น
     1.3.2   หน่วยเก็บข้อมูลสำรอง ( Secondary Storage ) เป็นหน่วยที่ทำหน้าที่เก็บข้อมูล หรือโปรแกรมที่จะป้อนเข้าสู่หน่วยความจำหลักภายในเครื่องก่อนทำการประมวลผลโดยซีพียู รวมทั้งเป็นที่เก็บผลลัพธ์จากการประมวลผลด้วย ปัจจุบันรู้จักในนามฮาร์ดดิสก์ (Hard disk) หรือแผ่นฟร็อปปีดิสก์ (Floppy Disk) ซึ่งเมื่อปิดเครื่องข้อมูลจะยังคงเก็บอยู่
1.4 หน่วยแสดงข้อมูลหรือเอาต์พุต ( Output Unit ) ทำหน้าที่ในการแสดงผลลัพธ์ที่ได้จากการประมวลผล ได้แก่ จอภาพ และเครื่องพิมพ์ เป็นต้น ทั้ง 4 ส่วนจะเชื่อมต่อกันด้วยบัส ( Bus )

2 ซอฟต์แวร์ ( Software ) 
ซอฟต์แวร์ คือโปรแกรมหรือชุดคำสั่ง ที่สั่งให้ฮาร์ดแวร์ทำงาน รวมไปถึงการควบคุมการทำงาน ของอุปกรณ์แวดล้อมต่างๆ เช่น ฮาร์ดดิสก์ ดิสก์ไดร์ฟ ซีดีรอม การ์ดอินเตอร์เฟสต่าง ๆ เป็นต้น ซอฟต์แวร์ เป็นสิ่งที่มองไม่เห็นจับต้องไม่ได้ แต่รับรู้การทำงานของมันได้ ซึ่งต่างกับ ฮาร์ดแวร์ (Hardware) ที่สามารถจับต้องได้  ซึ่งแบ่งเป็น 2 ประเภทคือ
2.1  ซอฟต์แวร์ระบบ ( System Software ) คือโปรแกรม ที่ใช้ในการควบคุมระบบการ ทำงานของเครื่องคอมพิวเตอร์ทั้งหมด เช่น การบูตเครื่อง การสำเนาข้อมูล การจัดการระบบของดิสก์ ชุดคำสั่งที่เขียนเป็นคำสั่งสำเร็จรูป โดยผู้ผลิตเครื่องคอมพิวเตอร์ และมีมาพร้อมแล้วจากโรงงานผลิต การทำงานหรือการประมวลผล ของซอฟต์แวร์เหล่านี้ ขึ้นกับเครื่องคอมพิวเตอร์แต่ละเครื่อง ระบบของซอฟต์แวร์เหล่านี้ ออกแบบมาเพื่อการปฏิบัติควบคุม และมีความสามารถในการยืดหยุ่น การประมวลผลของเครื่องคอมพิวเตอร์ แบ่งออกเป็น 4 ประเภทคือ
2.1.1 โปรแกรมระบบปฏิบัติการ (Operating System) เป็นโปรแกรมที่ใช้ควบคุม และติดต่อกับอุปกรณ์ต่าง ๆ ของเครื่องคอมพิวเตอร์ โดยเฉพาะการจัดการระบบของดิสก์ การบริหารหน่วยความจำของระบบ กล่าวโดยสรุปคือ หากจะทำงานใดงานหนึ่ง โดยใช้คอมพิวเตอร์เป็นเครื่องมือ ในการทำงาน แล้วจะต้องติดต่อกับซอฟต์แวร์ระบบก่อน ถ้าขาดซอฟต์แวร์ชนิดนี้ จะทำให้เครื่องคอมพิวเตอร์ ไม่สามารถทำงานได้ ตัวอย่างของซอฟต์แวร์ประเภทนี้ได้แก่ โปรแกรมระบบปฏิบัติการ Unix Linux  DOS และWindows (เวอร์ชั่นต่าง ๆ เช่น 95 98 me 2000 NT XP Vista ) เป็นต้น
                2.1.2  ตัวแปลภาษา (Translator)  จาก Source Code ให้เป็น Object Code (แปลจากภาษาที่มนุษย์เข้าใจ ให้เป็นภาษาที่เครื่องเข้าใจ เปรียบเสมือนล่ามแปลภาษา) เป็นซอฟต์แวร์ที่ใช้ในการแปลภาษาระดับสูง ซึ่ง เป็นภาษาใกล้เคียงภาษามนุษย์ ให้เป็นภาษาเครื่องก่อนที่จะนำไปประมวลผล ตัวแปลภาษาแบ่งออกเป็นสองประเภทคือ คอมไพเลอร์ (Compiler) และอินเตอร์พีทเตอร์ (Interpeter) คอมไพเลอร์จะแปลคำสั่งในโปรแกรมทั้งหมดก่อน แล้วทำการลิ้ง (Link) เพื่อให้ได้คำสั่งที่เครื่องคอมพิวเตอร์เข้าใจ ส่วนอินเตอร์พีทเตอร์จะแปลทีละประโยคคำสั่ง แล้วทำงานตามประโยคคำสั่งนั้น การจะเลือกใช้ตัวแปลภาษาแบบใดนั้น จะขึ้นอยู่กับภาษาที่ใช้ในการเขียนโปรแกรม ซึ่งมี 2 แบบได้แก่ ภาษาแบบโครงสร้าง   เช่น ภาษาเบสิก (Basic) ภาษาปาสคาล (Pascal) ภาษาซี (C) ภาษาจาวา(Java)ภาษาโคบอล (Cobol) ภาษา SQL ภาษา HTML เป็นต้น  ภาษาแบบเชิงวัตถุ ( Visual หรือ Object Oriented Programming ) เช่น Visual Basic,Visual C หรือ Delphi เป็นต้น
2.1.3  ยูติลิตี้ โปรแกรม (Utility Program) คือซอฟต์แวร์เสริมช่วยให้เครื่องทำงานมีประสิทธิภาพ มากขึ้น เช่น ช่วยในการตรวจสอบดิสก์ ช่วยในการจัดเก็บข้อมูลในดิสก์ ช่วยสำเนาข้อมูล ช่วยซ่อมอาการชำรุดของดิสก์ ช่วยค้นหาและกำจัดไวรัส ฯลฯ เป็นต้นโปรแกรมในกลุ่มนี้ได้แก่ โปรแกรม Norton Winzip Scan virus Sidekick Scandisk Screen Saver ฯลฯ เป็นต้น
2.1.4  ติดตั้งและปรับปรุงระบบ (Diagonostic Program) เป็นซอฟต์แวร์ที่ใช้ในการติดตั้งระบบ เพื่อให้คอมพิวเตอร์สามารถติดต่อและใช้งานอุปกรณ์ต่าง ๆ ที่นำมาติดตั้งระบบ ได้แก่ โปรแกรม Setupและ Driver ต่าง ๆ เช่น โปรแกรม Setup Microsoft Office โปรแกรม Driver Sound ,  Driver Printer , Driver Scanner ฯลฯ เป็นต้น
2.2  ซอฟต์แวร์ประยุกต์ (Application Software)
คือ ซอฟต์แวร์หรือโปรแกรมที่ทำให้คอมพิวเตอร์ทำงานต่างๆ ตามที่ผู้ใช้ต้องการ ไม่ว่าจะด้านเอกสาร บัญชี การจัดเก็บข้อมูล เป็นต้น ซอฟต์แวร์ประยุกต์สามารถจำแนกได้เป็น 2 ประเภท คือ
            2.2.1 ซอฟต์แวร์สำหรับงานเฉพาะด้าน (Special Purpose Software)  คือ โปรแกรมซึ่งเขียนขึ้นเพื่อการทำงานเฉพาะอย่างที่เราต้องการ บางที่เรียกว่า User’s Program เช่น โปรแกรมการทำบัญชีจ่ายเงินเดือน โปรแกรมระบบเช่าซื้อ โปรแกรมการทำสินค้าคงคลัง เป็นต้น ซึ่งแต่ละโปรแกรมก็มักจะมีเงื่อนไข หรือแบบฟอร์มแตกต่างกันออกไปตามความต้องการ หรือกฏเกณฑ์ของแต่ละหน่วยงานที่ใช้ ซึ่งสามารถดัดแปลงแก้ไขเพิ่มเติม (Modifications) ในบางส่วนของโปรแกรมได้ เพื่อให้ตรงกับความต้องการของผู้ใช้ และซอฟต์แวร์ประยุกต์ที่เขียนขึ้นนี้โดยส่วนใหญ่มักใช้ภาษาระดับสูงเป็นตัวพัฒนา
            2.2.2 ซอฟต์แวร์สำหรับงานทั่วไป (General Purpose Software) เป็นโปรแกรมประยุกต์ที่มีผู้จัดทำไว้ เพื่อใช้ในการทำงานประเภทต่างๆ ทั่วไป โดยผู้ใช้คนอื่นๆ สามารถนำโปรแกรมนี้ไปประยุกต์ใช้กับข้อมูลของตนได้ แต่จะไม่สามารถทำการดัดแปลง หรือแก้ไขโปรแกรมได้ ผู้ใช้ไม่จำเป็นต้องเขียนโปรแกรมเอง ซึ่งเป็นการประหยัดเวลา แรงงาน และค่าใช้จ่ายในการเขียนโปรแกรม นอกจากนี้ ยังไม่ต้องเวลามากในการฝึกและปฏิบัติ ซึ่งโปรแกรมสำเร็จรูปนี้ มักจะมีการใช้งานในหน่วยงาน ซึ่งขาดบุคลากรที่มีความชำนาญเป็นพิเศษในการเขียนโปรแกรม ดังนั้น การใช้โปรแกรมสำเร็จรูปจึงเป็นสิ่งที่อำนวยความสะดวกและเป็นประโยชน์อย่างยิ่ง ตัวอย่างโปรแกรมสำเร็จรูปที่นิยมใช้ได้แก่ MS-Office, Lotus, Adobe Photoshop, SPSS, Internet Explorer และ เกมส์ต่างๆ เป็นต้น


3 บุคลากร ( Peopleware ) 
                บุคลากรจะเป็นสิ่งสำคัญที่จะเป็นตัวกำหนดถึงประสิทธิภาพถึงความสำเร็จและความคุ้มค่าในการใช้งานคอมพิวเตอร์ ซึ่งสามารถแบ่งบุคลากรตามหน้าที่เกี่ยวข้องตามลักษณะงานได้ 6 ด้าน ดังนี้
3.1  นักวิเคราะห์และออกแบบระบบ (Systems Analyst and Designer  :  SA ) ทำหน้าที่ศึกษาและรวบรวมความต้องการของผู้ใช้ระบบ และทำหน้าที่เป็นสื่อกลางระหว่างผู้ใช้ระบบและนักเขียนโปรแกรม (Programmer) หรือปรับปรุงคุณภาพงานเดิม  นักวิเคราะห์ระบบต้องมีความรู้เกี่ยวกับระบบคอมพิวเตอร์ พื้นฐานการเขียนโปรแกรม และควรจะเป็นผู้มีความคิดริเริ่มสร้างสรรค์มีมนุษย์สัมพันธ์ที่ดี
3.2  โปรแกรมเมอร์ ( Programmer ) คือบุคคลที่ทำหน้าที่เขียนซอฟต์แวร์ต่างๆ(Software )หรือเขียนโปรแกรมเพื่อสั่งงานให้เครื่องคอมพิวเตอร์ทำงานตามความต้องการของผู้ใช้ โดยเขียนตามแผนผังที่นักวิเคราะห์ระบบได้เขียนไว้
3.3  ผู้ใช้ ( User ) เป็นผู้ใช้ระบบคอมพิวเตอร์ ซึ่งจะเป็นผู้ปฏิบัติหรือกำหนดความต้องการในการใช้ระบบคอมพิวเตอร์ว่าทำงานอะไรได้บ้าง     ผู้ใช้งานคอมพิวเตอร์ทั่วไป จะต้องเรียนรู้วิธีการใช้เครื่อง และวิธีการใช้งานโปรแกรม เพื่อให้โปรแกรมที่มีอยู่สามารถทำงานได้ตามที่ต้องการ
3.4  ผู้ปฏิบัติการ (Operator ) สำหรับระบบขนาดใหญ่  เช่น เมนเฟรม  จะต้องมีเจ้าหน้าที่คอมพิวเตอร์ที่คอยปิดและเปิดเครื่อง  และเฝ้าดูจอภาพเมื่อมีปัญหาซึ่งอาจเกิดขัดข้อง  จะต้องแจ้ง System  Programmer  ซึ่งเป็นผู้ดูแลตรวจสอบแก้ไขโปรแกรมระบบควบคุมเครื่อง (System  Software) อีกทีหนึ่ง 
3.5  ผู้บริหารฐานข้อมูล ( Database Administrator : DBA ) กลุ่มบุคคลที่ทำหน้าที่ดูแลข้อมูลผ่านระบบจัดการฐานข้อมูล ซึ่งจะควบคุมให้การทำงานเป็นไปอย่างราบรื่น นอกจากนี้ยังทำหน้าที่กำหนดสิทธิการใช้งานข้อมูล กำหนดในเรื่องความปลอดภัยของการใช้งาน   พร้อมทั้งดูแลดาต้าเบสเซิร์ฟเวอร์ (Database Server) ให้ทำงานอย่างปกติด้วย
3.6  ผู้จัดการระบบ (System Manager) คือ ผู้วางนโยบายการใช้คอมพิวเตอร์ให้เป็นไปตามเป้าหมายของหน่วยงาน  เป็นผู้ที่มีความหมายต่อความสำเร็จหรือล้มเหลวของการนำระบบคอมพิวเตอร์เข้ามาใช้งานเป็นอย่างมาก

4.  ข้อมูลและสารสนเทศ
 4.1 ข้อมูล (Data) หมายถึง ข้อเท็จจริงหรือเหตุการณ์ที่เกิดขึ้น แล้วใช้ตัวเลขตัวอักษร หรือสัญลักษณ์ ต่างๆ ทำความหมายแทนสิ่งเหล่านั้น เช่น
·         คะแนนสอบวิชาภาษาไทยของนักเรียน
·         อายุของพนักงานในบริษัทชินวัตรจำกัด
·         ราคาขายของหนังสือในร้านหนังสือดอกหญ้า
·         คำตอบที่ผู้ถูกสำรวจตอบในแบบสอบถาม
4.2 สารสนเทศ (Information) หมายถึง ข้อสรุปต่างๆ ที่ได้จากการนำข้อมูลมาทำการวิเคราะห์ หรือผ่านวิธีการที่ ได้กำหนดขึ้น ทั้งนี้เพื่อนำข้อสรุปไปใช้งานหรืออ้างอิง เช่น
·         เกรดเฉลี่ยของวิชาภาษาไทยของนักเรียน
·         อายุเฉลี่ยของพนักงานในบริษัทชินวัตรจำกัด
·         ราคาขายสูงสุดของหนังสือในร้านหนังสือดอกหญ้า
·         ข้อสรุปจากการสำรวจคำตอบในแบบสอบถาม
5.  กระบวนการทำงาน ( Procedure ) 
องค์ประกอบด้านนี้หมายถึงกระบวนการทำงานเพื่อให้ได้ผลลัพธ์ตามต้องการ ในการทำงานกับคอมพิวเตอร์ผู้ใช้จำเป็นต้องทราบขั้นตอนการทำงานเพื่อให้ได้งานที่ถูกต้องและมีประสิทธิภาพ ซึ่งอาจจะมีขั้นตอนสลับซับซ้อนหลายขั้นตอน ดังนั้นจึงมีความจำเป็นต้องมีคู่มือปฏิบัติงาน เช่น คู่มือผู้ใช้ ( user manual ) หรือคู่มือผู้ดูแลระบบ ( operation manual ) เป็นต้น

คุณสมบัตรของคอมพิวเตอร์
โดยทั่วไปที่เราพบเห็นกันในปัจจุบัน จะมีคุณสมบัติที่เป็นพื้นฐาน ซึ่งพอจะแบ่งออกได้ดังนี้


  1. ความเป็นอัตโนมัติ ( Self Acting) คอมพิวเตอร์ประดิษฐ์ขึ้นด้วยอุปกรณ์ทางอิเล็กทรอนิกส์ มีการจัดเก็บหรือแปลงข้อมูลให้อยู่ในรูปแบบของสัญญาณไฟฟ้าเพื่อให้คอมพิวเตอร์เข้าใจ การประมวลผลของคอมพิวเตอร์จะทำงานแบบอัตโนมัติภายใต้คำสั่งที่ได้ถูกกำหนดไว้ การทำงานดังกล่าวจะเริ่มตั้งแต่การนำข้อมูลเข้าสู่ระบบ การประมวลผลและแปลงผลลัพธ์ออกมาให้อยู่ในรูปแบบที่มนุษย์สามารถเข้าใจได้
  2. ความเร็ว ( Speed) คอมพิวเตอร์จะประมวลผลงานด้วยความเร็วสูง ต่างจากการประมวลผลงานในอดีตที่อาศัยแรงงานของมนุษย์ซึ่งให้ผลลัพธ์ที่ล่าช้ากว่ามาก งาน ๆ หนึ่งหากใช้แรงงานคนอาจเสียเวลาหลายวันหรือหลายสัปดาห์ในการคิดและประมวลผล แต่หากนำเอาคอมพิวเตอร์มาใช้อาจลดเวลาและให้ผลลัพธ์ได้เพียงไม่กี่นาที ความรวดเร็วในการประมวลผลดังกล่าวมีความจำเป็นอย่างมากต่อการดำเนินงานธุรกรรมในปัจจุบัน ผลลัพธ์ที่ได้จากการคำนวณด้วยคอมพิวเตอร์ ช่วยให้ผู้บริหารนำเอาไปใช้ประโยชน์ในการตัดสินใจหรือดำเนินงานได้อย่างรวดเร็ว
  3. ความถูกต้อง แม่นยำ ( Accuracy) คอมพิวเตอร์จะให้ผลลัพธ์ที่ถูกต้อง แม่นยำและมีความผิดพลาดน้อยที่สุด การใช้แรงงานคนเพื่อประมวลผลเป็นเวลานาน อาจเกิดการผิดพลาดได้ เนื่องมาจากความอ่อนล้า เช่น ลงรายการผิด หรือบันทึกข้อมูลผิดประเภท ตรงกันข้ามกับคอมพิวเตอร์ที่สามารถทำงานได้อย่างต่อเนื่องและซ้ำ ๆ แบบเดิมได้เป็นอย่างดี ทั้งนี้ขึ้นอยู่กับการป้อนข้อมูลเข้าที่ถูกต้องด้วย เนื่องจากคอมพิวเตอร์ไม่สามารถทราบได้ว่าข้อมูลที่ผู้ใช้ป้อนเข้ามานั้นเป็นอย่างไร ผิดหรือถูก หากมีการป้อนข้อมูลผิด โปรแกรมหรือชุดคำสั่งอาจประมวลผลตามที่ได้รับข้อมูลมาเช่นนั้น ซึ่งความไม่ถูกต้องดังกล่าวไม่ใช่เป็นความผิดพลาดของคอมพิวเตอร์ หากเป็นความผิดพลาดของฝั่งผู้ใช้เอง เป็นต้น
  4. ความน่าเชื่อถือ ( Reliability) ข้อมูลที่ได้จากการประมวลผลของคอมพิวเตอร์ จะมีความน่าเชื่อถือและสามารถนำไปใช้ประโยชน์อื่น ๆ ต่อไปได้ โดยเฉพาะในปัจจุบันมีฮาร์ดแวร์ที่ผลิตขึ้นด้วยอุปกรณ์อิเล็กทรอนิกส์ใหม่ มีการคิดค้นและพัฒนาให้ดีกว่ายุคสมัยก่อนที่มีการใช้เพียงแค่หลอดสุญญากาศ การประมวลผลด้วยคอมพิวเตอร์ในปัจจุบันจึงมีความผิดพลาดต่ำมากหรือแทบไม่เกิดขึ้นเลย นั่นคือการมีความน่าเชื่อถือสูงนั่นเอง
  5. การจัดเก็บข้อมูล ( Storage Capability) คอมพิวเตอร์สามารถจัดเก็บข้อมูลได้หลากหลายรูปแบบ ทั้งข้อมูลที่เป็นข้อความธรรมดาหลาย ๆ ล้านตัวอักษร เพลง ภาพถ่าย วิดีโอ หรือไฟล์ข้อมูลขนาดใหญ่จำนวนมาก โดยมีหน่วยเก็บข้อมูลเฉพาะเป็นของตนเอง ช่วยให้การจัดเก็บและถ่ายเทข้อมูลเป็นไปได้โดยสะดวกมากยิ่งขึ้น ปัจจุบันมักพบเห็นหน่วยเก็บข้อมูลที่จุข้อมูลได้มากขึ้นและมีราคาที่ถูกลงกว่าแต่ก่อนมาก
  6. ทำงานซ้ำ ๆ ได้ ( Repeatability) คอมพิวเตอร์สามารถทำงานซ้ำ ๆ กันได้หลายรอบ ช่วยลดปัญหาเรื่องความอ่อนล้าจากการทำงานของแรงงานคน นอกจากนั้นยังลดความผิดพลาดต่าง ๆ ได้ดีกว่าด้วย ข้อมูลที่ประมวลผลแม้จะยุ่งยากหรือซับซ้อนเพียงใดก็ตาม จะสามารถคำนวณและหาผลลัพธ์ได้อย่างรวดเร็ว การคิดหาผลลัพธ์ของงานที่มีลักษณะซ้ำ ๆ แบบเดิม เช่น การบันทึกรายการบัญชีประจำวัน การลงรายการสินค้าเข้า – ออกในระบบสินค้าคงคลังที่เกิดขึ้นเป็นประจำ จึงเหมาะอย่างยิ่งต่อการนำเอาคอมพิวเตอร์ไปใช้งาน
  7. การติดต่อสื่อสาร ( Communication) คอมพิวเตอร์ในปัจจุบันสามารถเชื่อมโยงเข้าหากันเป็นเครือข่ายมากยิ่งขึ้น แต่เดิมอาจเป็นแค่เครื่องคอมพิวเตอร์ส่วนบุคคลธรรมดา แต่ด้วยเทคโนโลยีที่ก้าวหน้าไปมาก เราสามารถเชื่อมต่อคอมพิวเตอร์หลาย ๆ เครื่องเข้าหากันเป็นเครือข่ายได้ ไม่ว่าจะเป็นเครือข่ายภายในองค์กรเล็ก ๆ หรือระดับเครือข่ายใหญ่ ๆ เช่น อินเทอร์เน็ต ทำให้การประมวลผลงานมีประสิทธิภาพมากยิ่งขึ้น และไม่จำกัดอยู่แค่พื้นที่หนึ่งอีกต่อไป คุณสมบัติเหล่านี้อาจพบเห็นได้ในคอมพิวเตอร์แบบใหม่ ๆ ทั่วไป













































































































วันอังคารที่ 1 พฤศจิกายน พ.ศ. 2559

บทที่ 2 แบบจำลองเครือข่าย

 แบบจำลองเครือข่าย



ISO เป็นองค์กรสากลที่ก่อตั้งขึ้นเพื่อสนับสนุนการกำหนดมาตรฐานระหว่างชาติ โดยแบบจำลอง OSI จัดเป็นมาตรฐสนหนึ่งที่ถูกนำมาใช้เป็นมาตรฐานสำหรับการสือสารบนเครือข่ายแบบจำลอง OSI มีการแบ่งการทำงานออกเป็นลำกับชั้น ที่เรียกว่าชั้นสือสาร โดยมีทั้งสิ้น 7 ชั้นด้วยกันคือ1. ชั้นสื่อสารทางกายภาพป็น ชั้นล่างสุด จะมีการกำหนดคุณสมบัติทางกายภาพของฮาร์ดแวร์ที่ใช้เชื่อมต่อระหว่าง คอมพิวเตอร์ทั้งสองระบบ เช่น
  • ความเร็วในการรับส่งข้อมูลเท่าใด
  • สายที่ใช้รับส่งข้อมูลจะเป็นแบบไหน
  • ข้อต่อที่ใช้ในการรับส่งข้อมูลมีมาตรฐานอย่างไร
  • สัญญาณที่ใช้ในการรับส่งข้อมูลมีรูปร่างอย่างไร
  • ใช้แรงดันไฟฟ้าเท่าไหร่

ข้อมูลใน Layer ที่ 1 นี้จะมองเห็นเป็นการรับส่งข้อมูลทีละบิตเรียงต่อกันไป



จากรูปแสดงถึงการส่งข้อมูลบน Physical layer ครับ แสดงให้เห็นว่า ข้อมูลจะมาเป็นอย่างไรก็ตาม ก็จะถูกแปลงเป็นสัญญาณเพื่อส่งไปยังปลายทาง แล้วฝั่งปลายทางก็จะนำสัญญาณที่รับมาแปลงกลับเป็นข้อมูลเพื่อส่งให้เครื่อง Client ต่อไป

ยังไม่ได้พูดถึงการส่งข้อมูลบน OSI นะครับ เอาไว้รอบหน้า ตรงนี้ผมอยกขึ้นมาเพื่อให้เห็นภาพเบื้องต้น


เพราะ ฉะนั้น อุปกรณ์ต่างๆที่มีความสามารถในการนำพาสัญญาณไป ก็พวก  Card LAN (NIC) , สาย UTP , สาย Fiber หรือพวก เต้าเสียบ หัวต่อต่างๆ RJ45 , RJ11 , RS323 ก็จัดอยู่ใน Physical Layer ครับ


2.ชั้นสือสารเชื่อมต่อข้อมูล
เป็นชั้นที่ทำหน้ากำหนดรูปแบบของการส่งข้อมูลข้าม Physical Network โดยใช้ Physical Address อ้างอิงที่อยู่ต้นทางและปลายทาง ซึ่งก็คือ MAC Address นั่นเอง รวมถึงทำการตรวจสอบและจัดการกับ error ในการรับส่งข้อมูล ข้อมูลที่ถูกส่งบน Layer 2 เราจะเรียกว่า Frame

ซึ่งบน Layer 2 ก็จะแบ่งเป็น LAN และ WAN ครับ

ซึ่ง ปัจจุบัน บน Layer 2 LAN เรานิยมใช้เทคโนโลยีแบบ Ethernet มากที่สุด ส่วน WAN ก็จะมีหลายแบบแตกต่างกันไป เช่น Lease Line (HDLC , PPP) , MPLS , 3G และอื่นๆ



สำหรับ LAN ยังมีการแบ่งย่อยออกเป็น 2 sublayers คือ
Logical Link Control (LLC)
IEEE 802.2 ซึ่งจะให้บริการกับ Layer ด้านบนในการเข้าใช้สัญญาณใน การรับ-ส่งข้อมูล ตามมาตรฐาน IEEE802 แล้ว จะอนุญาตให้สถาปัตยกรรมของ LAN ที่ต่างกันสามารถทำงานร่วมกันได้ หมายความว่า  Layer ด้านบนไม่จำเป็นต้องทราบว่า Physical Layer ใช้สายสัญญาณประเภทใดในการรับ-ส่งข้อมูล เพราะ LLC จะรับผิดชอบในการปรับ Frame ข้อมูลให้สามารถส่งไปได้ในสายสัญญาณประเภทนั้นได้ และไม่จำเป็นต้องสนใจว่าข้อมูลจะส่งผ่านเครือข่ายแบบไหน เช่น Ethernet , Token Ring บลาๆๆ และไม่จำเป็นต้องรู้ว่าการส่งผ่านข้อมูลใน Physical Layer จะใช้การรับส่งข้อมูล แบบใด LLC จะเป็นผู้จัดการเรื่องเหล่านี้ได้ทั้งหมดครับ
Media Access Control (MAC)
IEEE 802.3 ใช้ควบคุมการติดต่อสื่อสารกับ Layer 1 และรับผิดชอบในการรับ-ส่งข้อมูลให้สำเร็จและถูกต้อง โดยมีการระบุ MAC Address ของอุปกรณ์เครือข่าย ซึ่งใช้อ้างอิงในการส่งข้อมูลจากต้นทางไปยังปลายทาง เช่น
จาก ต้นทางส่งมาจาก MAC Address หมายเลข AAAA:AAAA:AAAA ส่งไปหาปลายทางหมายเลข BBBB:BBBB:BBBB เมื่อปลายทางได้รับข้อมูลก็จะรู้ว่าใครส่งมา เพื่อจะได้ตอบกลับไปถูกต้อง นั่นเอง, 3G และอื่นๆ






บน Ethernet (IEEE802.3) เมื่อมันมีหน้าที่ในการรับผิดชอบการรับ-ส่งข้อมูลให้สำเร็จและถูกต้อง มันจึงมีการตรวจสอบข้อผิดพลาดในการส่งข้อมูลด้วย ที่เราเรียกว่า Frame Check Sequence (FCS) และยังตรวจสอบกับ Physical ด้วยว่าช่องสัญญาณพร้อมสำหรับส่งข้อมูลไหม ถ้าว่างก็ส่งได้ ถ้าไม่ว่างก็ต้องรอ กลไลนี่เรารู้จักกันในชื่อ CSMA/CD นั่นเองครับ

CSMA/CD มันก็คือกลไลการตรวจสอบการชนกันของข้อมูล บน Ethernet ถ้าเกิดมีการชนกันเกิดขึ้น มันก็จะส่งสัญญาณ (jam signal) ออกไปเพื่อให้ทุกคนหยุดส่งข้อมูล แล้วสุ่มรอเวลา (back off) เพื่อส่งใหม่อีกครั้งละอื่นๆ




3. ชั้นสื่อสารควบคุมเครือข่าย
ทำหน้าที่ส่งข้อมูลข้ามเครือข่าย หรือ ข้าม network โดยส่งข้อมูลผ่าน Internet Protocol (IP) โดยมีการสร้างที่อยู่ขึ้นมา (Logical Address) เพื่อใช้อ้างอิงเวลาส่งข้อมูล เราเรียกว่า IP address ข้อมูลที่ถูกส่งมาจากต้นทาง เพื่อไปยังปลายทาง ที่ไม่ได้อยู่บนเครือข่ายเดียวกัน จำเป็นจะต้องพึ่งพาอุปกรณ์ที่ทำงานบน Layer 3 นั่นก็คือ Router หรือ Switch Layer 3 โดยใช้ Routing Protocol (OSPF , EIGRP) เพื่อหาเส้นทางและส่งข้อมูลนั้น (IP) ข้ามเครือข่ายไป


โดยการทำงานของ Internet Protocol (IP) เป็นการทำงานแบบ Connection-less หมายความว่า IP ไม่มีการตรวจสอบข้อมูลว่าส่งไปถึงปลายทางไหม แต่มันจะพยายามส่งข้อมูลออกไปด้วยความพยายามที่ดีที่สุด (Best-Effort) เพราะฉะนั้น ข้อมูลที่ส่งออกไปแล้วไม่ถึงปลายทาง ต้นทางก็จะไม่รู้เลย ถ้าส่งไปแล้วข้อมูลไม่ถึงปลายทาง ฝั่งต้นทางจะต้องทำการส่งไปใหม่ บน Layer 3 จึงมี Protocol อีกตัวนึงเพื่อใช้ตรวจสอบว่าปลายทางยังมีชีวิตอยู่ไหม ก่อนที่จะส่งข้อมูล นั่นคือ ICMP ครับ แต่ผู้ใช้งานจะต้องเป็นคนเรียกใช้ protocol ตัวนี้เองนะครับ


จริงๆ แล้ว ก็ยังมีรายละเอียดของ ICMP , ARP อีกที่ทำงานบน Layer 3 แต่เบื้องต้น เอาไว้เท่าที่ก่อนละกันครับ สำหรับ Layer 3


4. ชั้นสือสารเพื่อนำส่งข้อมูล
ทำหน้าที่เชื่อมต่อกับ Upper Layer ในการใช้งาน network services ต่างๆ หรือ Application ต่าง จากต้นทางไปยังปลายทาง (end-to-end connection) ในแต่ละ services ได้ โดยใช้ port number ในการส่งข้อมูลของ Layer 4 จะใช้งานผ่าน protocol 2 ตัว คือ TCP และ UDP



เมื่อข้อมูลถูกส่งมาใช้งานผ่าน services Telnet ไปยังปลายทางถูกส่งลงมาที่ Layer 4 ก็จะทำการแยกว่า telnet คือ port number 23 เป็น port number ที่ใช้ติดต่อไปหาปลายทาง แล้วฝั่งต้นทางก็จะ random port number ขึ้นมา เพื่อให้ปลายทางสามารถตอบกลับมาได้เช่นเดียวกัน




ทีนี้เรามาดู protocol 2 ตัว ใน Layer 4 กันต่อครับ

Transmission Control Protocol (TCP) มีคุณลักษณะที่สำคัญ ดังนี้

จัดแบ่งข้อมูลจากระดับ Application ให้มีขนาดพอเหมาะที่จะส่งไปบนเครือข่าย (Segment)

มีการสร้าง Connection กันก่อนที่จะมีการรับส่งข้อมูลกัน (Connection-oriented)

มีการใช้ Sequence Number เพื่อจัดลำดับการส่งข้อมูล

มีการตรวจสอบว่าข้อมูลที่ส่งไปถึงปลายทางหรือไม่ (Recovery)


บน TCP ก่อนจะส่งข้อมูลนั้นจะต้องทำการตรวจสอบก่อนว่า ปลายทางสามารถติดต่อได้ โดยจะทำการสร้างการเชื่อมต่อระหว่างผู้ส่งและผู้รับก่อน โดยใช้กลไล Three-Way Handshake เพื่อให้แน่ใจว่าข้อมูลที่ส่งจะสามารถส่งถึงผู้รับแน่นอน






นอกจาก Three-Way Handshake แล้ว TCP ยังมีกลไก Flow Control เพื่อควบคุมการส่งข้อมูลเมื่อเกิดปัญหาบนเครือข่ายระหว่างที่ส่งข้อมูลอยู่ หรือ กลไล Error Recovery ในกรณีที่มีข้อมูลบางส่วนหายไปขณะส่ง ก็ให้ทำการส่งมาใหม่ (Retransmission) แต่ผมขอพูดเรื่องกลไลต่างๆไว้เพียงเบื้องต้นละกันนะครับ

นอก จากนั้นยังสามารถทำการจัดสรรค์หรือแบ่งส่วนของข้อมูลออกเป็นส่วนๆ (Segmentation) ก่อนที่จะส่งลงไปที่ Layer 3 อีกด้วย และข้อมูลที่ถูกแบ่งออก ก็จะใส่ลำดับหมายเลขเข้าไป (Sequence number) เพื่อให้ปลายทางนำข้อมูลไปประกอบกันได้อย่างถูกต้อง

User Datagram Protocol (UDP) มีคุณลักษณะที่สำคัญ ดังนี้

ไม่มีการสร้าง Connection กันก่อนที่จะมีการรับส่งข้อมูลกัน (Connectionless)

ส่งข้อมูลด้วยความพยายามที่ดีที่สุด (Best-Effort)

ไม่มีการตรวจสอบว่าข้อมูลที่ส่งไปถึงปลายทางหรือไม่   (No Recovery)

บน UDP จะตรงข้ามกับ TCP เลยครับ เพราะ ไม่มีการสร้างการเชื่อมต่อกันก่อน หมายความว่าถ้า services ใดๆ ใช้งานผ่าน UDP ก็จะถูกส่งออกไปทันทีด้วยความพยายามที่ดีที่สุด (ฺBest-Effort) และไม่มีการส่งใหม่เมื่อข้อมูลสูญหาย (No Recovery) หรือส่งไม่ถึงปลายทางอีกด้วย

ข้อดีของมันก็คือ มีความรวดเร็วในการส่งข้อมูล เพราะฉะนั้น services ที่ใช้งานผ่าน UDP ก็มีมากมาย เช่น TFTP , DHCP , VoIP และอื่นๆ เป็นต้น


ผมชอบภาพนี้ เพราะเปรียบเทียบการทำงานของ TCP และ UDP ได้เห็นภาพดีเหมือนกันครับ






5. ชั้นสือสารควบคุมหน้าต่างสื่อสาร
ทำหน้าที่ควบคุมการเชื่อมต่อ session เพื่อติดต่อจากต้นทาง กับ ปลายทาง ลองดูจากรูปตัวอย่างเผื่อจะทำให้เข้าใจง่ายขึ้น (รึเปล่า) 55+



เมื่อฝั่งต้นทางต้องการติดต่อไปยังปลายทางด้วย port 80 (เปิด Internet Explorer) ฝั่งต้นทางก็จะทำการติดต่อไปยังปลายทาง โดยการสร้าง session ขึ้นมา เป็น session ที่ 1 ส่งผ่าน Layer 4 โดย random port ต้นทางขึ้นมาเป็น 1025 ส่งไปหาปลายทางด้วย port 80

ระหว่าง ที่ session ที่ 1 ใช้งานอยู่ เราติดต่อไปยังปลายทางอีกครั้งด้วย port 80 (เปิด Google Chrome) ฝั่งต้นทางก็จะทำการสร้าง session ที่ 2 ขึ้นมา ส่งผ่าน Layer 4 โดย random port ต้นทางขึ้นมาเป็น 1026 ส่งไปหาปลายทางด้วย port 80

แล้วแต่ละ session ฝั่งปลายทาง ก็จะตอบกลับมาด้วย port ที่ฝั่งต้นทางส่งมา ทำให้สามารถแยก session ออกได้ เมื่อเราส่งข้อมูลบนเครือข่ายนั่นเองครับ


6. ชั้นสื่อสารนำเสนอข้อมูล
ทำหน้าที่ในการแปล หรือ นำเสนอ structure , format , coding ต่างๆของข้อมูลบน application ที่จะส่งจากต้นทางไปยังปลายทาง ให้อยู่ในรูปแบบที่ฝั่งต้นทางและปลายทาง สามารถเข้าใจได้ทั้ง 2 ฝั่ง

ผมอ่านจากเว็บนึงกล่าวไว้ก็เข้าใจง่ายดีนะครับ

Most computers use the ASCII table for characters. If another computer would use another character like EBCDIC than the presentation layer needs to “reformat” the data so both computers agree on the same characters.


เค้าบอกว่า computer ส่วนมากใช้ ASCII format ถ้าจะติดต่อพวก computer mainframe จะใช้พวก EBCDIC format ซึ่ง Layer 6 ก็จะทำการ reformat ข้อมูล ซึ่งสามารถทำให้ทั้ง 2 เครื่องสามารถเข้าใจ format ข้อมูลที่จะสื่อสารกันได้

7. ชั้นสื่อสารประยุกต์
ทำหน้าที่ติดต่อระหว่างผู้ใช้ (user) กับ application ที่ใช้งานบนเครือข่าย เช่น Web Browser (HTTP) , FTP , Telnet เป็นต้น สรุปแล้วมันก็คือพวก application ที่ใช้งานผ่าน network นั่นเองครับ
แนวคิดของการแบ่งชันสื่อสาร คือ1. เพื่อลดความซับซ้อน ทำให้ง่ายต่อการเรียนรู้และเข้าใจ2.เพื่อให้แต่ละชั้นมีบทบาทหน้าที่ชัดเจน และแตกต่างกัน3. เพื่อให้แต่ละชันสื่อสารปฏิบัติงานตามฟังก์ชั่นหน้าที่ ที่ได้รับมอบหมาย และสอดคล้องกับมาตรฐานสากล4.จากขอบเขตการรับผิดชอบในแต่ละชั้นสือสาร ทำให้การสื่อสารเกิดความคล้องตัว และเพื่อป้องกันกรณีเกิดความเปลียนแปลงบนชั้นสื่อสารหนึ่งๆ แล้วส่งผลกระทบต่อชั้นสื่อสารอื่นๆ5. จำนวนชั้นสื่อสารจะต้องมีมากเพียงพอ และเหมาะสมต่อการจำแนกหน้าที่การทำงานให้แต่ละชั้นสื่อสาร และไมควรมีมากจนดูเลอะทะ เกินความจำเป็นTCP/IP เป็นโพรโทคอลมาตรฐานลนเครือข่ายอิเทอร์เน็ต ซื่งแบบจำลอง TCP/IP ประกอบด้วยชั้นสือสารต่างๆ ดั้งนี้1. ชั้นสื่อสารทางกายภาพ2. ชั้นสื่อสารเชื่อมต่อข้อมูล 3. ชั้นสื่อสารควบคุมเครือข่าย4. ชั้นสื่อสารเพื่อนำส่งข้อมูล5. ชั้นสือสารประยุคต์



อ้างอิง
1. การสื่อสารข้อมูลและเครือข่าย
2. http://netprime-system.com/osi-model-7-layers/