วันพฤหัสบดีที่ 13 กันยายน พ.ศ. 2561

โปรโตคอลที่ทำงานใน OSI Model Layer

 โปรโตคอลที่ทำงานใน OSI Model Layer




1.Data Link Layer

  1. ATM ( automatic teller machine )
  2. Ethernet
  3. FDDI ( Fiber Distribution Data Interface )

2.Network    Layer

  1. DDP  (Datagram Delivery Protocol)
  2. IPv4 หรือ IPv6 (Internet Protocol)
  3. CLNP (onnectionless-mode Network Service)

3.Transport Layer

  1. FCP  (Fibre Channel Protocol)
  2. SPX ( Internetwork Packet Exchange )
  3. ATP (AppleTalk Transaction Protocol)

4.Session Layer

  1. ADSP (Apple Talk Data Stream Protocol)
  2. iSNS (Internet Storage Name Service)
  3. ASP (AppleTalk Data Stream Protocol)

5.Presentation Layer 

  1. GIF (Graphics Interchange Format)
  2. MPEG ( Motion Picture Experts Group)
  3. Encription ( Data Encryption )

6. Application Layer

  1. WWW (World Wide Web)
  2. SNMP (Simple Network Management)
  3. NFS (Network File System )

IGP


IGP


         IGP (Interior Gateway Protocol) เป็น ประเภทของ routing Protocol ที่มีลักษณะการแลกเปลี่ยนข้อมูลของ routing table ที่อยู่ภายใต้ (Autonomous System) AS เดียวกัน Autonomous System หมายถึง ระบบเครือข่ายที่มีการแลกเปลี่ยนข้อมูล อยู่ ในภายใต้การบริหารของ ผู้ดูแลระบบ หรือมี policy เดียวกัน เช่น ระบบ network ของ องค์กร หรือบริษัทใดบริษัทหนึ่ง ถือว่าอยู่ภายใต้ผู้ดูแล กลุ่มเดียวกัน หรือ หลายๆ บริษัทที่มี policyเดียวกัน เช่น บริษัทใดบริษัทหนึ่งมี customer provider partner dealer ที่ต้องการใช้เครือข่ายร่วมกัน เพื่อ share ข้อมูลร่วมกันในการบริงานต่างๆ routing protocol ประเภท IGP เช่น RIP, IGRP (ยกเลิกการใช้ไปแล้ว), EIGRP, OSPF, IS-IS โดย IGP สามารถ แบ่งตาม ลักษณะการทำงานได้ 3 ชนิดคือ
1. Distance Vector Routing Protocol เป็น Protocol ที่ ใช้ ระยะทาง hop count ในการคำนวณเส้นทาง เช่น RIP ,IGRP  2. Link State Routing Protocol ใช้ algorithm ในการวาด topology ขึ้นมา แล้วนำมาควณเส้นทางที่ดีที่สุด เช่น OSPF, IS-IS  3. Hybrid Routing Protocol เป็นการนำข้อดีของ Distance Vector Routing Protocol และ Link State Routing Protocol มา เช่น EIGRP

อ้างอิง:http://comnetwork2013.blogspot.com
อ้างอิงรูป: http://www.thenetworkencyclopedia.com/entry/interior-gateway-protocol-igp/

EGP

EGP




      EGP (Exterior Gateway Protocol) เป็น ประเภทของ routing Protocol ที่มีลักษณะการแลกเปลี่ยนข้อมูลของ routing table ที่อยู่ ต่าง AS กัน เช่น การแลกเปลี่ยนข้อมูลระหว่างองค์กร โดยทั่วไปผู้ใช้ routing protocol ลักษณะนี้คือ Internet Service Provider (ISP), Internet Exchange (IX) เพราะ ใน Internet เป็น การรวมกันของ networkย่อยๆ ของหลายๆองค์กร จนครอบคลุมทั่วโลก โดย จะใช้ routing protocol ที่เรียกว่า BGP (Border Gateway Protocol)
อ้างอิง:http://comnetwork2013.blogspot.com
อ้างอิงรูป:http://wwwlehre.dhbw-stuttgart.de/~schulte/htme/55146.htm

NNP

NNTP 



NNTP ( Network News Transfer Protocol )เป็นโปรโตคอลที่ใช้กำหนดมาตรฐานสำหรับ

  • ไคลเอนต์ใช้ประกาศหัวข้อ ( Article ) ขึ้นไปไว้ที่เซิร์ฟเวอร์
  • ไคลเอนต์ใช้รับและอ่านหัวข้อข่าวจากเซิร์ฟเวอร์
  • ใช้แลกเปลี่ยนหัวข้อข่าวระหว่าง News Server

     NNTP นั้นคล้ายคลึง SMTP เช่น แมสเสจของ NNTP จะต้องอยู่ในรูปของรหัส ASCII และคำสั่งของ NNTP เองก็อยู่ในรูปของรหัส ASCII เช่นเดียวกัน โดยแต่ละคำสั่งจะมีพารามิเตอร์ต่อท้ายและจบลงด้วยรหัส CR และ LF ในแบบเดียวกับที่ SMTP มีใช้ การตอบกลับของ NNTP จะใช้รหัส 3 หลัก ตามด้วยข้อความที่ใช้รหัส ASCII โดยรหัสสามหลักนั้นถูกนำไปใช้ผลักดันการเปลี่ยนสถานะ State Machine ของโปรโตคอลตรงตำแหน่งที่ต้องการให้ข้อความสามารถปรากฎให้ผู้บริโภคเห้นการตอบกลับจะจบลงด้วยรหัส CR และ LF เรียงติดกัน ในกรณีคำสั่งที่ส่งไปทำให้เซิร์ฟเวอร์ต้องตอบกลับด้วยข้อมูลขนาดใหญ่มาก อย่างเช่น ตัวบทความ แต่ละบรรทัดจะต้องจบลงด้วยรหัส CR และ LF แต่เมื่อสิ้นสุดคำตอบกลับทั้งหมดจะจบด้วยเครื่องหมายจุดทศนิยมแล้วตามด้วยรหัส CR และ LF ซึ่งจะเห็นว่าเหมือนกับวิธีการ Dot Stuffing ที่ SMTP นำไปใช้ โดยในบรรทัดใดที่ขึ้นต้นด้วยเครื่องหมายจุดทศนิยม จะต้องมีจุดทศนิยมเพิ่มขึ้นมาอีก 1 จุดแล้วตามด้วยรหัส CR และ LF ต่อท้าย จุดที่เพิ่มเข้ามานั้นจะถูกตัดทิ้งไปโดยเซิร์ฟเวอร์ฝั่งผู้รับ เป็นโพรโทคอลสำหรับอินเทอร์เน็ตที่ใช้ในการอ่านและเขียนกลุ่มข่าว (Usenet) และใช้ในการส่งข้อมูลระหว่างแต่ละเซิร์ฟเวอร์กลุ่มข่าว โพรโทคอล NNTP พัฒนาต่อมาจากโพรโทคอล SMTP โดยใช้พอร์ต 119 ของโพรโทคอล TCP แต่ถ้าใช้การเชื่อมต่อแบบเข้ารหัสด้วย SSL จะใช้พอร์ต 563 แทนและเรียกว่า NNTP

อ้างอิง:http://wich246.tripod.com/nntp.htm

AMQP

AMQP

อ้างอิงรูปภาพ : https://www.cloudamqp.com/img/docs/camqp.png

        AMQP เป็นไบนารีโปรโตคอลชั้นแอพพลิเคชันที่ออกแบบมาเพื่อรองรับการใช้งานข้อความและรูปแบบการสื่อสารที่หลากหลาย จะให้การควบคุมการไหล การสื่อสารด้วยข้อความที่มีการรับประกันการส่งข้อความเช่นเดียวกับที่มากที่สุดครั้งหนึ่ง(โดยที่แต่ละข้อความจะถูกส่งเพียงครั้งเดียวหรือไม่ก็ตาม) อย่างน้อยหนึ่งครั้ง (โดยที่แต่ละข้อความจะต้องมีการส่งมอบ, แต่อาจจะทำหลาย ๆ ครั้ง) และว่าครั้งเดียว (ที่ข้อความจะเสมอแน่นอนมาถึงและทำได้เพียงครั้งเดียว) [4]และการตรวจสอบและ / หรือการเข้ารหัสบนพื้นฐานของSASLและ / หรือTLS สมมติว่าโปรโตคอลชั้นการขนส่งที่เชื่อถือได้เช่น Transmission Control Protocol (TCP) 
       ข้อกำหนด AMQP มีการกำหนดไว้ในหลายเลเยอร์: (i) ระบบพิมพ์ (ii) สมมาตรอะซิงโครนัสโปรโตคอลสำหรับการถ่ายโอนข้อความจากกระบวนการหนึ่งไปสู่อีกกระบวนการหนึ่ง (iii) มาตรฐานรูปแบบข้อความที่สามารถขยายได้และ (iv) ชุด ของความสามารถในการรับส่งข้อความแบบมาตรฐาน แต่สามารถขยายได้
อ้างอิงข้อมูล :https://en.wikipedia.org

MQTT

 
    MQTT (Message Queuing Telemetry Transport) เป็นโปรโทคอลที่ถูกออกแบบมาให้มีขนาดเล็กสำหรับการสื่อสารแบบ M2M ( Machine to Machine ) โดยถือกำเนิดจากวิศวกรจาก IBM และ Eurotech ในปี 1999 เพื่อนำไปใช้ในระบบ SCADA (Supervisory Control and Data Acquisition) สำหรับเชื่อมต่อท่อส่งน้ำมันบนเครือข่ายที่ไม่มีความเสถียรอย่างอินเตอร์เน็ตดาวเทียม ก่อนที่จะถูกบริจาคกลายเป็น Open Standard ในปี 2014 โดย OASIS 
      MQTT เป็นสถาปัตยกรรมแบบ Client/Server ซึ่งมี topology แบบ hub-and-spoke ค่ะ sensor ปลายทางจะทำหน้าที่เป็น client ซึ่งทำการสร้างเชื่อมต่อแบบ TCP ไปยัง Server ที่มีชื่อเรียกอีกชื่อว่า Broker ซึ่งมีหน้าที่เป็นเสมือนท่อส่งข้อมูลในการรับส่ง ‘Message’ ระหว่าง Client ที่เป็นได้ทั้ง Publisher และ Subscriber นั่นเอง
      Client – หมายถึง Publisher หรือ Subscriber ที่เชื่อมต่อแบบรวมศูนย์ไปยัง Broker ซึ่งสามารถเชื่อมต่อได้ทั้งแบบpersistent ที่ทำการสร้าง session ค้างไว้เปิดตลอดเวลาเพื่อติดต่อกับ Broker ซึ่งตรงกันข้ามกับ  client ที่เชื่อมต่อแบบ transient ซึ่ง Broker ไม่สามารถติดตามสถานะได้
      Broker – เป็น software ที่ทำหน้ารับข้อความทั้งหมดที่ได้จาก Publisher แล้วจึงส่งต่อไปให้ Subscriber ตามแต่ Topic ที่ client ได้ทำการ subscribe ไว้
      Topic – เป็นเหมือน address หรือ endpoint บน Broker ที่ client ทำการเชื่อมต่อเพื่อรับส่งข้อความระหว่างกันนั่นเองค่ะ
      MQTT เป็นเหมือนสเปคของซอฟท์แวร์ที่มี API ไม่กี่ตัวในการเชื่อมต่อ client เข้าด้วยกัน จึงไม่สามารถใช้เป็นตัวกลางในการจัดเก็บและกระจายข้อมูล ( Store-and-Forward )  เหมือนเช่นในระบบ  MoM  (Message Oriented Middleware) ที่ทำหน้าที่ในการจัดการคิวในการกระจายข้อมูลในระบบที่ต้องการความน่าเชื่อถือและมีข้อความจำนวนมาก ดังนั้นจึงมีการนำ MQTT ไปประยุกต์ใช้ร่วมกับ MoM เช่น RabbitMQ หรือ Redis เพื่อให้สามารถใช้งานได้อย่างมีประสิทธิภาพในเชิงพาณิชย์ค่ะ
     ข้อดีคือ MQTT คือเหมาะกับการนำไปใช้กับระบบคลาวด์ที่ให้บริการแบบรวมศูนย์เพราะถูกออกแบบให้เหมาะกับการกระจายข้อมูลแบบ many-to-many ตัวอย่างแอปพลิเคชันที่นำ MQTT ไปใช้อย่างแพร่หลายคงจะหนีไม่พ้น IoT Platform ที่มีอยู่ในท้องตลาดมากมาย แต่ก่อนหน้านี้ IoT Platform จะผุดขึ้นมาเป็นดอกเห็ด MQTT ก็ได้พิสูจน์ตัวเองโดยการถูกนำไปใช้กับ Facebook Messenger ด้วยเหตุนี้เองจึงทำให้เป็นตัวเลือกยอดนิยมในการให้บริการโซลูชันด้าน IoT บนคลาวด์ อีกทั้งยังเป็นมิตรกับ Network Engineer มากด้วยเนื่องจาก device สามารถทำการสร้าง session แลกเปลี่ยนข้อมูลกันได้โดยไม่ต้องทำการตั้งค่า NAT ให้วุ่นวาย อีกทั้งนักพัฒนาสามารถนำไปใช้กับร่วมกับ TLS/SSL เพื่อเพิ่มความปลอดภัยในการรับส่งข้อมูลได้ด้วยค่ะ
      แม้ MQTT จะถูกออกแบบมาให้มีขนาดเล็ก แต่ก็ยังมีข้อเสียสำหรับอุปกรณ์ที่มีทรัพยากรจำกัดเนื่องจาก client ทุกตัวต้องรองรับ TCP และทำการสร้างการเชื่อมต่อกับ broker ไว้ตลอดเวลา ซึ่งอาจเกิดปัญหาได้หากอยู่ในเครือข่ายที่ไม่เสถียร ( เน็ตหลุดบ่อยเป็นต้น)

CoAP

        CoAP (Constrained Application Protocol) เป็นมาตรฐานที่ถูกพัฒนาขึ้นมาใหม่โดย IETF ในปี 2014 โดยถูกออกแบบให้คล้ายกับ HTTP ซึ่งเป็น Document transfer protocol แต่มีขนาดเล็กกว่ามาก (มี header แบบคงที่ขนาด 4 byte) เพราะตัดส่วนที่ไม่จำเป็นทิ้งและรันบน UDP ซึ่งเป็น protocol ที่ไม่มีการสร้างการเชื่อมต่อระหว่างอุปกรณ์ปลายทาง จึงส่งข้อมูลได้เร็วมากแต่ไม่การันตีว่าข้อมูลจะถูกส่งไปยังปลายทางอย่างแน่นอนและถูกต้องตามลำดับ การส่งซ้ำและเรียงลำดับข้อมูลต้องไปทำบนระดับแอปพลิเคชัน
         CoAP เป็นสถาปัตยกรรมแบบ Client/Server โดย client จะทำการร้องขอทรัพยากรไปที่ server โดยตรง จากนั้นserver จะทำการตอบกลับคำร้องพร้อมกับออพชัน ‘Content-Type’ เพื่อว่าบอก client ว่ากำลังจะได้รับข้อมูลในรูปแบบไหนกลับไป (เช่น JSON, XML, CBOR เป็นต้น) โดย client สามารถ GET, PUT, POST และ DELETEทรัพยากรบน Server ด้วย URL และ query string คล้ายกับ REST API ที่เราคุ้นเคยนั่นเอง
         ในการสภาปัตยกรรมแบบ CoAP ที่มีการแลกเปลี่ยนทรัพยากรกันโดยตรง Sensor Node ทำหน้าที่เป็นทั้ง Server และ Client ในเวลาเดียวเพราะต้องทำการตอบรับ packets ที่ถูกส่งมาหา
           ในมุมของนักพัฒนาแล้ว CoAP มีความคล้ายคลึงกับ HTTP มาก ซึ่งทำให้การดึงข้อมูลจากเซ็นเซอร์ไม่ต่างจากการดึงข้อมูลผ่าน Web API เท่าไหร่นัก บางคนอาจจะเปรียบ CoAP ได้ว่าเป็น REST API สำหรับ MCU นั่นเอง อีกทั้งยังเป็นโปรโทคอลที่มีความปลอดภัย เพราะมีการเข้ารหัสแบบ DTLS (เทียบเท่ากับ 3072-bit RSA key) ซึ่งสามารถรันบนอุปกรณ์ขนาดเล็กได้
CoAP เป็นโปรโทคอลใหม่ที่กำลังถูกพัฒนาอย่างต่อเนื่องแตกต่างจาก MQTT ที่เติบโตจนอยู่ในขั้นที่เสถียรแล้ว
            CoAP ออกแบบมาสำหรับการแลกเปลี่ยนข้อมูลแบบ one-to-one เหมาะสำหรับแอปพลิเคชันแบบกระจายศูนย์ ที่มีอุปกรณ์อยู่บนเครือข่ายเดียวกันสามารถติดต่อกันได้โดยตรง (ถ้าอยู่คนละเครือข่ายอาจต้องลำบากในการตั้งค่า NATนั่นเอง) ตัวอย่างแอปพลิเคชันที่มีการนำ CoAP ไปใช้แพร่หลายคือระบบ Smart Home หรือระบบที่ต้องมีการควบคุมและสั่งงานโดยผู้ใช้เป็นต้น
             จะเห็นได้ว่าแต่ละโปรโทคอลมีทั้งข้อดีและข้อเสียที่แตกต่างกัน สุดท้ายแล้วการตัดสินใจว่าจะนำแต่ละโปรโทคอลใดไปใช้ขึ้นอยู่กับสถานการณ์ สถาปัตยกรรมของระบบและข้อจำกัดทางด้านทรัพยากรทางด้านเครือข่ายของแต่ละคน เราจึงต้องเลือกเครื่องมือให้เหมาะสมกับงาน ในระบบที่มีความซับซ้อนมากๆ เราอาจจะประยุกต์ใช้พร้อมกันหลายๆ โปรโทคอลตามแต่ความเฉพาะเจาะจงของแอปพลิเคชันเพื่อให้บรรลุเป้าหมายในการทำงานได้อย่างมีประสิทธิภาพสูงสุด 

วันเสาร์ที่ 1 กันยายน พ.ศ. 2561

TCP/IP

TCP/IP 



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

TCP และ IP มีหน้าที่ต่างกัน คือ
 1.  TCP จะทำหน้าที่ในการแยกข้อมูลเป็นส่วน ๆ หรือที่เรียกว่า Package ส่งออกไป ส่วน TCP ปลายทาง ก็จะทำการรวบรวมข้อมูลแต่ละส่วนเข้าด้วยกัน เพื่อนำไปประมวลผลต่อไป โดยระหว่างการรับส่งข้อมูลนั้นก็จะมีการตรวจสอบความถูกต้องของ ข้อมูลด้วย ถ้าเกิดผิดพลาด TCP ปลายทางก็จะขอไปยัง TCP ต้นทางให้ส่งข้อมูลมาใหม่
 2.  IP จะทำหน้าที่ในการจัดส่งข้อมูลจากเครื่องต้นทางไปยังเครื่องปลายทางโดยอาศัย IP Address 


อ้างอิ้งข้อมูล : http://www.mindphp.com

IP

IP Address 
      
อ้างอิงรูปภาพ : http://www.vmodtech.com/spaw/images/publicIP.gif
      IP Address คือหมายเลขที่สามารถระบุแยกแยะความแตกต่างของเครื่องคอมพิวเตอร์ และอุปกรณ์เครือข่ายต่าง ๆ ที่มีการเชื่อมต่อในเครือข่ายเดียวกัน หรือจะเป็นการเชื่อมต่อนอกเครือข่ายก็ได้เช่นกัน อย่างที่กล่าวมาแล้วในตอนต้นว่า IP Address เปรียบได้ดังเลขที่บ้านในการตั้ง IP Address จะตั้งไม่ให้ซ้ำกันอย่างเด็ดขาด เพราะถ้าซ้ำกันจะทำให้เกิดความสับสนในการติดต่อสื่อสารภายในเครือข่าย ซึ่งนี่เองเลยมีหน่วยงานที่ออกมากำหนดเรื่องของการตั้งค่า IP Address ขึ้นมา
       หน่วยงานนี้คือ องค์การกำหนดหมายเลขอินเทอร์เน็ต (IANA) เป็นผู้ดำเนินการจัดสรร IP Address ทั่วโลก และให้หน่วยงานทะเบียนอินเทอร์เน็ตประจำภูมิภาค (RIR) ทำหน้าที่จัดสรรกลุ่มเลขที่อยู่ IP Address สำหรับ ผู้ให้บริการอินเทอร์เน็ตและหน่วยงานอื่น ๆที่เกี่ยวข้องอีกทีหนึ่ง
        โดยที่เลข IP Address ในปัจจุบันนี้มีอยู่ 2 แบบด้วยกันคือ IPv4 และ IPv6 ซึ่ง IP Address IPv4 นี้ถือกำเนิดมาก่อนเป็นแบบ ตัวเลข 32 บิต ซึ่งในปัจจุบันก็ยังมีใช้งานอยู่แต่เนื่องจากการใช้งานอินเตอร์เน็ตในปัจจุบันในเติบโตอย่างรวดเร็วทำให้ต้องมีการคิดค้นเลข IP Address ขึ้นมารองรับ นั้นก็คือ IPv6 ใช้ตัวเลข 128 บิต พัฒนาขึ้นใน ค.ศ. 1995 และได้ทำให้เป็นมาตรฐานใน อาร์เอฟซี 2460 เมื่อ ค.ศ. 1998
อ้างอิงข้อมูล https://www.xn--12cg1cxchd0a2gzc1c5d5a.net/ip-address/

IMAP

IMAP คือ
         

    IMAP ย่อมาจาก Internet Message Access Protocol ซึ่งมีข้อดีกว่า โปรโตคอล POP (Post Office Protocol) ที่จะทำงานแบบ Offline Model หรือจะเรียกว่าการทำงานด้านเดียวนั้นเอง ซึ่งการทำงานของ POP จะแตกต่างจาก IMAP อย่างสิ้นเชิง โดยการทำงานของ POP จะใช้งานผ่าน Email client จากเครื่องคอมพิวเตอร์ ติดต่อกับ Mail Server โดยตรงซึ่งการแก้ไข ลบ เพิ่ม เติมอีเมล์ก็จะทำได้จาก Email client เท่านั้น แต่การทำงานของ IMAP นั้นทำงานแตกต่างจากโปรโตคอล POP ด้วยการทำงานควบคู่กับอุปกรณ์สื่อสารต่าง ๆซึ่งการทำงานแบบนี้เรียกว่า การทำงานแบบ Two way communication หรือ Online Model
     ลักษณะการทำงานของโปรโตคอล IMAP นั้นจะทำงานแบบออนไลน์ด้วยการจัดการและประมวลผลต่าง ๆทางออนไลน์จาก Mail Server ทั้งหมด ไม่ว่าจะเป็นการแจ้งเตือนว่ามีการเปิดอ่านเมล์ใหม่หรือยัง หรือการลบเมล์ที่มีอยู่ใน อินบล็อคออกไป โดยการทำงานทั้งหมดจะอยู่ที่ Mail Server เป็นตัวจัดการ ซึ่งผู้ใช้งานเพียงแต่ทำงานอ่านและจัดการสั่งงานเพียงเท่านั้น เราสามารถอธิบายการทำงานของระบบ IMAP ให้เห็นภาพได้ชัดขึ้นไปอีกก็คือ เมื่อเราเปิดอ่านเมล์ในมือถือและทำการลบเมล์นั้นทิ้งไปแล้ว เมื่อเราไปเปิดอีเมล์ในคอมพิวเตอร์หรืออุปกรณ์อื่น ๆอีเมล์ที่ลบไปแล้วจะไม่โชว์ให้เราเห็น ซึ่งต่างจากโปรโตคอล POP อย่างสิ้นเชิง เพราะการทำงานของ POP เมื่อเราลบอีเมล์จากคอมพิวเตอร์ออกไปแล้วเมื่อเราไปเปิดอีเมล์จากมือถือเราก็ยังพบอีเมล์ที่ถูกลบไปแล้วในคอมพิวเตอร์อยู่นั่นเอง
อ้างอิง : http://www.comgeeks.net

ICMP

ICMP

                                       
                       



หลักการทำงาน
   
     รูปแบบการทำงานของโปรโตคอล  ICMP จะทำควบคู่กับโปรโตคอล IP ในระบบเดียวกัน และข้อความต่าง ๆ ที่แจ้งให้ทราบจะถูกรวมอยู่ภายในข้อมูล  IP Packet อีกทีหนึ่ง หรือ เป็นผู้รายงานความผิดพลาดในนามของ IP
เมื่อโปรโตคอลเกิดความผิดพลาดโดยไม่สามารถกู้คืนได้  Packet  ก็จะดำเนินการอย่างใดอย่างหนึ่งดังต่อไปนี้      ยกเลิก Packet แล้วรายงานความผิดพลาดกลับมายังผู้ส่ง ข้อความที่ส่งไปนั้นก็จะถูกทิ้ง


 -    การแจ้งหรือแสดงข้อความจากระบบ เพื่อบอกให้ผู้ใช้ ทราบว่า เกิดอะไรขึ้นในการส่งผ่านข้อมูลนั้น 
 -   โปรโตคอล ICMP ยังถูกเรียกใช้งานจากเครื่อง Server และ Router อีกด้วย เพื่อแลกเปลี่ยนข้อมูลฃที่ใช้ควบคุม
 -    เมื่อมีการส่งผ่านข้อมูลจากผู้ใช้ไปยังปลายทางที่ไม่ถูกต้อง หรือขณะนั้นเครื่องปลายทางเกิดปัญหาจนไม่สามารถ
      รับข้อมูลได้
 -    Router จะส่งข้อความแจ้งเป็น ICMP Message ที่ชื่อ Destination Unreachable ให้กับผู้ส่งข้อมูลนั้น 
      นอกจากนี้ตัวข้อมูลที่แจ้งข้อความจะมีส่วนของข้อมูล IP Packet ที่เกิดปัญหาด้วย
 -   โปรโตคอล ICMP จึงกลายมาเป็นเครื่องมืออย่างหนึ่งในการช่วยทดสอบเครือข่าย เช่น คำสั่ง Ping ที่เรามักใช้ทดสอบ
      ว่าเครื่อง Server ที่ให้บริการหรืออุปกรณ์ที่ต่ออยู่ในเครือข่ายอินเตอร์เน็ตนั้นยังทำงานเป็นปกติหรือไม่  



RARP

RARP คือ





RARP (Reverse Address Resolution Protocol)
โปรโตคอล RARP จะมีการทำงานที่คล้ายคลึงกับโปรโตคอล ARP โดยจะทำงานในลักษณะตรงกันข้าม ด้วยการแปลงหมายเลขแมคแอดเดรสให้เป็นหมายเลขไอพี ซึ่งโปรโตคอล RARP นี้ออกแบบมาเพื่อใช้งานกับคอมพิวเตอร์ที่ปราศจากดิสก์หรือฮาร์ดดิสก์ (Diskless Computer) ดังนั้นเวลาบูตเครื่องจึงจำเป็นต้องบูตจากระบบปฏิบัติการเครือข่ายของเซิร์ฟเวอร์บนเครือข่าย โดยเซิร์ฟเวอร์บนเครือข่ายจะจัดเก็บตารางความสัมพันธ์ระหว่างแมคแอดเดรสกับหมายเลขไอพี โฮสต์ที่ต้องการหมายเลขไอพีจะทำการบรอดแคสต์ RARP Query Packet ที่บรรจุฟิสิคัลแอดเดรสไปยังทุกๆ โฮสต์บนเครือข่าย จากนั้นเครื่องเซิร์ฟเวอร์บนเครือข่ายก็จะจัดการกับ RARP Packet ด้วยการตอบกลับไปด้วยหมายเลขไอพีไปยังโฮสต์นั้น 

ARP

ARP คือ
      ARP (Address Resolution Protocol) เป็นโปรโตคอลสำหรับการจับคู่ (map) ระหว่าง Internet Protocol address (IP address) กับตำแหน่งของอุปกรณ์ในระบบเครือข่าย เช่น IP เวอร์ชัน 4 ใช้การระบุตำแหน่งขนาด 32 บิต ใน Ethernet ของระบบใช้การระบุ ตำแหน่ง 48 บิต (การระบุตำแหน่งของอุปกรณ์รู้จักในชื่อของ Media Access Control หรือ MAC address) ตาราง ARP ซึ่งมักจะเป็น cache จะรักษาการจับคู่ ระหว่าง MAC address กับ IP address โดย ARP ใช้กฎของโปรโตคอล สำหรับการสร้างการจับคู่และแปลงตำแหน่งทั้งสองฝ่าย


การทำงานของ ARP

     เมื่อแพ็คเกตนำเข้าที่ระบุเครื่อง host ในระบบเครือข่ายมาถึง Gateway เครื่องที่ Gateway จะเรียกโปรแกรม ARP ให้หาเครื่อง host หรือ MAC address ที่ตรงกับ IP address โปรแกรม ARP จะหาใน ARP cache เมื่อพบแล้วจะแปลงแพ็คเกต เป็นแพ็คเกตที่มีความ ยาวและรูปแบบที่ถูกต้องเพื่อส่งไปยังเครื่องที่ระบุไว้ แต่ถ้าไม่พบ ARP จะกระจายแพ็คเกตในรูปแบบพิเศษ ไปยังเครื่องทุกเครื่องในระบบและถ้าเครื่องใดเครื่องหนึ่งทราบว่ามี IP address ตรงกันก็จะตอบกลับมาที่ ARP โปรแกรม ARP จะปรับปรุง ARP cache และส่งแพ็คเกตไปยัง MAC address หรือเครื่องที่ตอบมา

     เนื่องจากแต่ละโปรโตคอลมีรายละเอียดที่แตกต่างกันตามประเภทของ LAN ดังนั้นจึงมี การแยก ARP Request for Comments ตามประเภทของโปรโตคอลสำหรับ Ethernet, asynchronous transfer mode, Fiber Distributed-Data Interface, HIPPI และโปรโตคอลอื่น

     ส่วน Reverse ARP สำหรับเครื่อง host ที่ไม่รู้จัก IP address นั้น RARP สามารถให้เครื่องเหล่านี้ขอ IP address จาก ARP cache ของ Gateway
ก่อนอื่น เราต้องรู้เกี่ยวกับ ARP Spoofing คร่าวๆก่อนครับ ว่ามันคืออะไร ทำไมถึงใช้วิธีนี้ดัก Packet เราได้ ?

ปกติแล้ว การที่เครื่องเซิฟเวอร์เราสื่อสารกับใคร จะต้องมีการรับส่งข้อมูลผ่านเครื่อง Gateway

[SERVER] <----> [GATEWAY] <----> [เครื่อง PC ของคุณ]

   
แต่ถ้าอย่างระดับธนาคารเขาจะใช้ SSL (https://) ในการช่วยเข้ารหัส Packet ถึงดักไปก็จะได้ข้อมูลที่อ่านไม่รู้เรื่อง
แล้วถ้าอย่างเราๆบ้านๆ ไปซื้อ https:// หมด คงไม่ได้แน่ เพราะต้นทุนสูง ต้องใช้ Dedicated IP ด้วยอีก
เราตัดปัญหาที่เจ้าหน้าที่ ISP จะมาดักข้อมูลเราได้เลย เราไม่ได้มีข้อมูลอะไรสำคัญขนาดธนาคาร
เรามามองที่เรื่องของ ผู้ใช้ ใกล้ๆเรานี่สิครับ ที่จะมาดักข้อมูลเรา
ซึ่ง Gateway ของ ISP จะปลอดภัยอยู่แล้ว คงไม่มีเจ้าหน้าที่ใน ISP คนไหนมานั่งดักข้อมูลกันหรอกครับ

โปรโตคอลที่ทำงานใน OSI Model Layer

 โปรโตคอลที่ทำงานใน OSI Model Layer 1.Data Link Layer ATM (  automatic teller machine  ) Ethernet FDDI (  Fiber Distributi...