ความเป็นมาของ TCP/IP

          TCP/IP เป็นมาตรฐานของการรับส่งข้อมูลระหว่างคอมพิวเตอร์ สองระบบที่มีจุดเริ่มต้นราว 30 มาแล้ว เมื่อกระทรวงกลาโหมสหรัฐฯ หรือ Department Of Defense (DOD) ทำโครงการทดลองในปี ค.ศ. 1969 เชื่อมโยงคอมพิวเตอร์ทางทหารของแต่ละหน่วย ซึ่งเป็นคอมพิวเตอร์ต่างชนิดกันให้สามารถติดต่อรับส่งข้อมูลกันได้ ( File Transfer) และสามารถใช้บริการอื่นๆ เช่น Remote Login รวมถึงการรับส่งจดหมาย อิเล็กทรอนิค (E-mail) ด้วย จุดประสงค์ของโครงการนี้คือสร้างระบบเครือข่ายคอมพิวเตอร์ให้สามารถส่งข้อมูลกันได้ แม้ว่าสายส่งข้อมูลบางส่วนหรือคอมพิวเตอร์บางเครื่องในเครือข่ายจะถูกทำลายเสียหายไปก็ตาม ซึ่งเป็นคุณสมบัติที่สำคัญยิ่งยามสงคราม

          ในขณะนั้นกองทัพบกเลือกใช้คอมพิวเตอร์และระบบเครือข่ายของ Digital Equipment Coperation (DEC), กองทัพเรือเลือกใช้คอมพิวเตอร์ของ Unisys ส่วนกองทัพอากาศเลือกใช้คอมพิวเตอร์ของ IBM เมื่อจะทำการรบกระทรวงกลาโหมสหรัฐฯก็พบว่าคอมพิวเตอร์ของทั้ง 3 กองทัพสื่อสารข้ามระบบ กันไม่ได้ จึงได้ให้ทุนในการทำโครงการเชื่อมต่อคอมพิวเตอร์ของทั้ง 3กองทัพเข้าด้วยกันเป็นระบบเครือข่าย โดยมีคุณสมบัติพิเศษแตกต่างจากระบบเครือข่ายที่ใช้งานกันทั่วๆไปคือ การรับส่งข้อมูลจะแบ่งข้อมูลออกเป็นส่วนย่อยๆเรียกว่า “แพกเก็ต” (packet) ข้อมูลแต่ละส่วนนี้จะถูกส่งไปให้คอมพิวเตอร์ผู้รับปลายทางผ่านสายส่งข้อมูล โดยแต่ละส่วนอาจใช้เส้นทางสำหรับส่งข้อมูลคนละทางก็ได้ คอมพิวเตอร์ปลายทางจะนำข้อมูลที่ได้รับมาต่อรวมกันตามลำดับจนครบ หากเส้นทางที่ส่งข้อมูลเสียหายหรือเครื่องคอมพิวเตอร์บางส่วนในเครือข่ายเสียหายข้อมูลก็จะถูกส่งไปใหม่โดยใช้เส้นทางอื่นแทนโดยอัตโนมัติ โครงการนี้มีชื่อว่า Advance Research Projects Agency Network หรือที่รู้จักกันดีในชื่อ ARPANET ซึ่งประสบความสำเร็จอย่างสูงจนใช้งานกันอย่างจริงจังในปี ค.ศ.1975

          ซอฟแวร์ที่ใช้ควบคุมการรับส่งข้อมูลของ ARPANET ประกอบด้วยส่วนหลักๆ 2 ส่วนคือ Transmission Control Protocol หรือ TCP และ Internet Protocol หรือIP ซึ่งTCP มีหน้าที่ตรวจสอบการรับส่งข้อมูลระหว่างคอมพิวเตอร์ผู้รับและผู้ส่ง ให้ได้รับข้อมูลถูต้องครบถ้วน หากข้อมูลสูญหายก็จะแจ้งให้ต้นทางส่งข้อมูลมาใหม่ ส่วน IP จะมีหน้าที่เลือกเส้นทางที่ใช้รับส่งข้อมูลผ่านระบบเครือข่าย และตรวจสอบ Address ของผู้รับโดยใช้ข้อมูลขนาด 4 ไบต์หรือ 32 บิตเป็นตัวกำหนด Address ต่อมาในปี ค.ศ. 1983 TCP/IP ถูกกำหนดให้เป็นมาตรฐานการรับส่งข้อมูลของกระทรวงกลาโหมสหรัฐฯ เราจึงถือว่า TCP/IP มีต้นกำเนิดมาจากโครงการ ARPANET นั่นเอง และได้ถูกรวมเป็นส่วนหนึ่งของระบบปฏิบัติการ UNIX โดย Bolt, Beranek และ Newman ซึ่งได้รับทุนสนับสนุนจากกระทรวงกลาโหมสหรัฐฯอีกเช่นเดียวกัน ทำให้ TCP/IP ก็ยิ่งมีบทบาทในการสื่อสารมากขึ้นเรื่อยๆ จนกระทั่งกลายเป็นอินเตอร์เน็ตในปัจจุบันโดยมี ARPANET เป็นแกนกลาง และได้มีการกำหนดมาตรฐานที่ใช้ในการรับส่งข้อมูลเครือข่ายอื่นๆเพิ่มเติมขึ้นมาในภายหลังรวมทั้ง OSI Model ในเวลาต่อมา

 

โปรโตคอล TCP/IP

          โปรโตคอล TCP/IP เป็นชื่อเรียกของชุดโปรโตคอลที่สำคัญ มีการใช้งานกันอย่างแพร่หลายตามการขยายตัวของอินเตอร์เน็ต/อินทราเน็ต ความจริงแล้วโปรโตคอล TCP/IP เป็นกลุ่มของโปรโตคอลหลายตัวที่ประกอบกันเป็นชุดให้ใช้งาน โดยมีคำเต็มว่า Transmission Control Protocol /Internet Protocol ซึ่งจากชื่อเต็มทำให้เราเห็นว่าอย่างน้อยก็มีโปรโตคอลประกอบกันทำงานร่วมกัน 2 โปรโตคอลคือ TCP และ IP

          ตัวอย่างของกลุ่มโปรโตคอลในชุดของ TCP/IP ที่เราพบและใช้งานบ่อยๆ (ส่วนใหญ่เราจะไม่ใช้งานตรงๆ แต่ใช้งานผ่านแอพพลิเคชั่นต่างๆ หรือใช้งานโดยทางอ้อม) เช่น Internet Protocol (IP), Address Resolution Protocol (ARP) ,Internet Control Message Protocol (ICMP), User Datagram Protocol (UDP) ,Transport Control Protocol(TCP), Simple Mail Transfer Protocol(SMTP)และ Domain Name System(DNS) เป็นต้น

           โปรโตคอลที่มีบทบาทสำคัญในการทำงานในเครือข่ายอินเตอร์เน็ต คือ Internet Protocol (โปรโตคอล IP ) เนื่องจาก เมื่อโปรโตคอลอื่นๆต้องการส่งผ่านข้อมูลข้ามเครือข่ายในอินเตอร์เน็ตนั้น จะต้องอาศัยการผนึกข้อมูล (encapsulation) ไปกับโปรโตคอล IP ที่มีกลไกการระบุเส้นทาง(route service) ผ่าน Gatewayหรือ Router เพื่อนำข้อมูลไปยังเครือข่ายและเครื่องปลายทางที่ถูกต้อง เนื่องจากกลไกการระบุเส้นทางจะทำงานที่โปโตคอล IP เท่านั้น และด้วยเหตุนี้เราจึงเรียก IP ว่าเป็นโปรโตคอลที่มีความสามารถระบุเส้นทางการส่งผ่านข้อมูลได้(routable)

 

                       The IP Protocol

          รูปแบบที่ใช้ในการส่งข้อมูลบน Internet เรียกว่า Datagram ( ดังรูปที่ 1 ) ประกอบด้วย 2 ส่วน ส่วนหัวใช้ในการบอกข้อกำหนดต่างๆซึ่งมีความยาวไม่เกิน 60 Bytes ข้อมูลที่ปรากฏใน 20 Bytes แรกใช้บอกข้อกำหนดที่เป็นส่วนบังคับ ข้อมูลใน 40 Bytes ต่อมาใช้เป็นส่วนขยายที่บอกข้อกำหนดเพิ่มเติมตามความต้องการ ส่วนหางของ Datagram คือส่วนที่เป็นข้อมูลข่าวสารที่ต้องการ Datagram จะถูกส่งโดย ( จากรูป ) จากซ้ายไปขวา และจากบนลงล่างซึ่งเรียกว่า Big Endian ( เครื่อง SUN SPARC ) ทำงานแบบ Big Endian ( ส่วนเครื่อง PC-Pentium ทำงานแบบ Little Endian ) ดังนั้นเครื่อง Computer ที่ทำงานแบบ Little Endian จะต้องมี Program ในการแปลง Datagram ให้เป็นแบบ Big Endian ก่อนที่จะเริ่มส่งข้อมูลและแปลงข้อมูลที่ได้รับกลับมาเป็นแบบ Little Endian ก่อนที่จะเริ่มตรวจสอบหรือนำข้อมูลนั้นไปใช้

|---------------------------------------------- 32 Bits ----------------------------------------------|

Version

IHL

Type service

Total lenght

Identification

 

D

M

Fragment offset

Time to live

Protocol

Header checksum

Source address

Destination addresses

Options (0 or more words)


รูปที่ 1 ข้อมูลที่ส่วนหัวของ Package IP

ต่อไปนี้คือคำอธิบายของข้อมูลเขตต่างๆที่เป็นส่วนประกอบของ Datagram

          • เขตข้อมูล Version เป็นเขตข้อมูลแรกสุดมีความยาว 4 Bits ใช้เก็บหมายเลขรุ่นของ Datagram วิธีการนี้ทำให้ Datagram ที่ไดัรับการพัฒนาขึ้นมาใหม่สามารถทำงานร่วมกับ Datagram รุ่นเก่าได้ นั่นคือจะมี Datagram หลายๆรุ่นใช้งานอยู่บนเครือข่าย Internet เนื่องจากความยาวของ Datagram ส่วนหัวมีขนาดเปลี่ยนแปลงได้อยู่ระหว่าง 20 Bytes ถึง 60 Bytes เขตข้อมูล ISL จึงใช้กำหนดความยาวของ Datagram โดยบอกเป็นจำนวนคำของข้อมูล Computer ในกรณี Internet 1 คำมีความยาว 4 Bytes ดังนั้นค่าต่ำสุดของ ISL จึงเป็น 5 คำ ซึ่งเท่ากับ 20 Bytes เนื่องจากเขตข้อมูลนี้มีความยาวเพียง 4 Bits ทำให้กำหนดค่าสูงสุดได้เท่ากับ 15 จึงเป็นเหตุผลว่าข้อมูลส่วนหัว Datagram มีได้สูงสุด 15 คำซึ่งเท่ากับ 60 Bytes เมื่อตัดส่วนบังคับออกไปแล้วจะเหลือเนื้อที่สำหรับส่วนขยายเพียง 10 คำหรือ 40 Bytes ซึ่งเนื้อที่ขนาดนี้ไม่เพียงพอในการบรรจุข้อมูลที่สำคัญหลายๆอย่าง เช่น ทางเดินโดยละเอียดของ Datagram จากผู้ส่งไปยังผู้รับ
          • เขตข้อมูล Type of Service เป็นตัวบอกชนิดการบริการซึ่งมีผลโดยตรงต่อความเร็วในการรับส่งและคุณภาพของข้อมูล เช่น การส่งข้อมูลประเภทเสียงที่อาจเป็นเสียงคนพูดหรือเสียงเพลง จะเน้นความรวดเร็วในการให้บริการมากกว่าการส่งข้อมูลข่าวสาร ( เช่นการส่งแฟ้มข้อมูล ) ที่ต้องการความถูกต้องแน่นอนมากกว่าความเร็ว หรือการส่งข้อมูลที่มีความสำคัญและเป็นความลับจะต้องการความปลอดภัยของข้อมูลมากที่สุด ภายในเขตข้อมูลนี้ยังแบ่งออกเป็นหลายส่วนย่อย เช่น ส่วนย่อยแรกมีความยาว 3 Bits ใช้กำหนดลำดับความเร่งด่วน ซึ่งมีอยู่ 3 ลักษณะคือ การรอคอย, ปริมาณงาน และระดับความเชื่อถือ และลำดับความเร่งด่วนนี้ใช้ในการเลือกสื่อในการส่งข้อมูล เช่น ข้อมูลที่ส่งผ่านดาวเทียม จะเป็นประเภทที่ให้ปริมาณงานสูงแต่ก็มีการรอคอยสูง เป็นต้น อย่างไรก็ตามเขตข้อมูล Type of Service นี้ไม่เป็นที่นิยมใช้ในปัจจุบันอีกต่อไป
          • เขตข้อมูล Total Length มีความยาว 2 Bytes เป็นตัวระบุความยาวของ Datagram ทั้งหมด ( ทั้งส่วนหัวและส่วนหาง ) นั่นหมายความว่า Datagram หนึ่งจะมีความยาวสูงสุดได้ไม่เกิน 15,535 Bytes ( หรือเท่ากับ 64 Kbytes )
          • เขตข้อมูล Identification มีความยาว 2 Bytes ใช้ในกรณีที่ข้อมูลข่าวสารที่ต้องการส่งผ่านระบบเครือข่ายฯ มีความยาวมากหรืออาจเป็นเพราะเหตุผลทางกายภาพอื่นๆ ข้อมูลนั้นจะถูกแบ่งออกเป็นหลาย Datagram เนื่องจากเป็นข้อมูลชุดเดียวกันเขตข้อมูลนี้จึงใช้เก็บหมายเลขข่าวสาร ซึ่ง Datagram ทุกตัวในชุดนี้จะใช้หมายเลขเดียวกันทั้งหมด เมื่อผู้รับได้รับ Datagram ชุดนี้ก็จะทราบได้ว่าเป็นข้อมูลชุดเดียวกัน
          • เขตข้อมูลต่อไป มีความยาว 1 Bits ไม่ได้ใช้ประโยชน์ใดๆ ตามด้วยเขตข้อมูล DF และ MF แต่ละตัวมีความยาว 1 Bits DF ย่อมาจาก Do not Fragment หมายความว่าผู้ส่งไม่ต้องการให้ Host ใดๆ แบ่ง Datagram นี้ออกเป็นหลายส่วน ทั้งที่เพราะผู้ส่งทราบว่าผู้รับไม่มีความสามารถในการรวมข้อมูลจากหลายๆ Datagram เข้าด้วยกัน ส่วน MF ย่อมาจากคำว่า More Fragment หมายความว่า ข้อมูลข่าวสารที่ผู้ส่งส่งมานั้นถูกแบ่งออกเป็นหลายส่วนใน Datagram หลายตัว Bit นี้จะถูกกำหนดให้เท่ากับ 1 ทุกตัว Datagram ตัวที่กำหนดให้เป็น 0 จะหมายถึงตัวสุดท้ายในชุด
          • เขตข้อมูล Fragment Offset ใช้เป็นหมายเลขบอกให้ทราบถึงตำแหน่งของข้อมูลที่บรรจุอยู่ใน Package นี้ว่าเป็นส่วนประกอบส่วนที่เท่าใดของ Datagram แต่ละ Package จะประกอบด้วยข้อมูลที่เป็นจำนวนเท่าของ 8 Bytes ยกเว้น Package สุดท้ายข้อมูลส่วนนี้มีความยาว 13 Bytes จึงสามารถบอกจำนวนส่วนประกอบได้มากถึง 8,192 ส่วนต่อหนึ่ง Datagram

IP address
          หมายเลข IP address ถูกกำหนดขึ้นมาให้ เป็นหมายเลขอ้างอิงประจำตัวขออุปกรณ์ต่างๆ ที่เชื่อมต่ออยู่ในเครือข่ายอินเตอร์เน็ตโดยการกำหนดหมายเลข IP address นี้จะไม่ผูกติดกับตัวฮาร์ดแวร์แต่อย่างใด จึงสามารถกำหนดใหม่หรือแก้ไขเปลี่ยนแปลงได้เมื่อมีการเปลี่ยนตัวฮาร์แวร์ ทั้งนี้เนื่องจากเป็นการกำหนดด้วยซอฟต์แวร์ แตกต่างกับหมายเลข MAC address (Media Access Control address) ซึ่งเป็นหมายเลขประจำตัวของอุปกรณ์ที่อยู่ในเครือข่าย ค่า MAC address จะถูกกำหนดจากบริษัทผู้ผลิตอุปกรณ์ตั้งแต่เริ่มผลิต เช่น อุปกรณ์ Network interface Card (NIC) จะมีค่า MAC address ประจำตัวที่ไม่ซ้ำกันและไม่สามารถแก้ไขได้ ค่า MAC address เป็นการระบุค่าอ้างอิงของอุปกรณ์ฮาร์ดแวร์ในระดับล่างสุด (Physical layer) ของกลไกการรับส่งข้อมูลภายในเครือข่าย ถ้าจะใช้หมายเลข MAC address สำหรับระบุอ้างอิงกันในเครือข่ายแล้วจะเกิดปัญหามาก เมื่อมีการเปลี่ยนหรือย้ายเครื่องต้องทำการกำหนดระบบเครือข่ายใหม่ (configuration) นอกจากนี้ยังจดจำได้ยากกว่า

          การทำงานของ โปรโตคอล IP จำเป็นต้องอาศัยหมายเลข IP address นี้เพื่อระบุและอ้างอิงถึงอุปกรณ์ต่างๆที่ต่ออยู่ในเครือข่ายไม่ว่าจะเป็นเว็ปเซิร์ฟเวอร์, เมลล์เซิฟเวอร์, อุปกรณ์ Router ฯลฯ หมายเลข IP addressจะเป็นค่าตัวเลขขนาด 32 บิต ถูกแบ่งออกเป็นส่วนๆ ส่วนละ 8 บิต รวมเป็น 4 ส่วนและคั่นแต่ละส่วนด้วยเครื่องหมายจุด (.) ดังนั้นค่าตัวเลขในแต่ละส่วนจะมีได้ตั้งแต่ 0 ถึง 255

          ค่าของ IP address ถูกกำหนดออกเป็น 2 ความหมายคือ ค่าของหมายเลขอุปกรณ์ในเครือข่าย (host address) และค่าของหมายเลขเครือข่าย (network address)

          เพื่อไม่ให้การกำหนดแจกจ่ายค่า IP address ซ้ำซ้อนกัน จึงมีหน่วยงานกลางทำหน้าที่กำหนด IP address และแจกจ่ายเลขหมายให้แต่ละองค์กรได้ใช้งาน คือ หน่วยงาน InterNIC หรือ Internet Network Information Center เป็นผู้ดูแลฐานข้อมูลการแจกจ่าย IP address และการใช้งานให้เกิดประโยชน์สูงสุด บริษัทหรือองค์กรที่ต้องการ IP address ในการกำหนดใช้งานเพื่อเชื่อมระบบของตนเข้าสู่เครือข่ายอินเตอร์เน็ตจะต้องสมัครเป็นสมาชิกขององค์กร InterNIC เสียก่อนโดยจะมีการเก็บค่าบำรุงเป็นรายปีและแบ่งระดับของสมาชิกเป็นองค์กรขนาดใหญ่, องค์กรขนาดกลางและองค์กรขนาดเล็ก ตามลำดับ ค่าบำรุงสมาชิกก็จะจ่ายไม่เท่ากัน เช่น ค่าบำรุงสมาชิกขององค์กรขนาดกลางอยู่ที่ปีละ 5,000 $ เมื่อบริษัทหรือองค์กรได้เป็นสมาชิกแล้วก็สามารถแจ้งความจำนงขอ IP address มาใช้งานได้ต่อไปสำหรับประเทศไทย บริษัทใดที่ต้องการเชื่อมต่อเครือข่ายของตนเข้าสู่ อินเตอร์เน็ต จะต้องติดต่อกับบริษัทผู้ให้บริการอินเตอร์เน็ต (Interner Service Provider หรือ ISP ) แทนและสามารถขอ IP address ที่ ISP ได้ทันทีเพราะทาง ISP ได้ขอ IP address เอาไว้สำหรับแจกจ่ายลูกค้าของตนแล้ว

 

 IP Security (IPSec)

          เมื่อพื้นฐานของการสื่อสารผ่านเครือข่ายอินเตอร์เน็ตคือ โปรโตคอล TCP/IP ดังนั้นการเพิ่มความปลอดภัยในด้านการสื่อสาร จึงถูกมุ่งประเด็นไปที่ TCP/IP เทคโนโลยีของ IPSec ก็เช่นเดียวกัน IETF ได้กำหนดมาตรฐาน สำหรับเหตุผลที่ว่าทำไม TCP/IP จึงถูกจับเข้ามาสวมเกราะป้องกันตัว นั้นก็เป็นเพราะข้อเท็จจริงประการหนึ่งที่ว่า การทำงานบนเครือข่ายอินเตอร์เน็ต ไม่ว่าจะเป็นการใช้บราวเซอร์ผ่านโปรโตคอล HTTP การใช้ SSL ก็ทำงานบนพื้นฐานของ TCP/IP โปรโตคอลในการรับ-ส่งเมล์อย่าง POP3 , SMTP ก็ผ่าน TCP/IP หรือ FTP , Telnet ก็ยังคงทำงานด้วย TCP/IP เรียกว่าเกิดจากการประยุกต์ TCP/IP แทบทั้งสิ้น ดังนั้นคงไม่ต้องแปลกใจที่ว่า จับโจรจับหัวหน้า ถ้าจะสร้างเกราะให้ใครสักคน ก็ต้องสร้างให้กับหัวโจกก่อนนั่นแหละ หัวโจกปลอดภัยแล้ว ลูกน้องก็อยู่ได้

          IP Security หรือเรียกกันย่อๆ ว่า IPSec นั้นประกอบด้วยอะไรบ้าง องค์ประกอบแรกที่เหมือนระบบรักษาความปลอดภัยอื่นๆ คือ การใส่รหัส (Encryption) เพื่อป้องกันข้อมูลรั่วไหล ป้องกันการแอบดึงข้อมูลไปใช้ ประการต่อไปของ IPSec คือ การตรวจสอบความมีตัวตน (Authentication) และประการสุดท้ายของ IPSec คือ ความถูกต้องของข้อมูล มีระบบป้องกันการทำลาย การทำให้ข้อมูลผิดรูปไป

          หลักการของ IPSec คือ การเพิ่ม IPSec Header เข้าไปใน Packet ของ TCP/IP โดยปกติแล้ว หากปราศจาก IPSec แพ็คเก็จหนึ่งๆ จะประกอบด้วย IP Header , IP payload และเมื่อใช้ IPSec ส่วนของ IPSec Header ก็จะถูกผนวกเข้าไปในแพ็คเก็จด้วย การป้องกันในระดับนี้ เรียกว่าเป็นการป้องกันในระดับ Network Layer ผลกระทบอื่นๆที่ควรพิจารณาคือ เมื่อใส่ IPSec Header ลงไปแล้ว ก็ไม่ได้ไปรบกวนการทำงานของการรับ-ส่งข้อมูลแต่อย่างใด ระบบยังทำงานเหมือนเดิม และไม่มีผลกระทบต่อ Switch Layer 2/3 แต่มีผลกระทบต่อ Switch Layer 4

           ประโยชน์ของ IPSec นั้นได้มีการนำมาประยุกต์ได้หลายประการ โดยเฉพาะ ตามเอกสารของไมโครซอฟต์และอินเทล การประยุกต์ดังกล่าวได้แก่ ในระดับของการตรวจสอบความมีตัวตนที่แท้จริง (Authenticate) เวลาที่ผู้ใช้งาน Log On ระบบก็คือ เมื่อข้อมูล User Name และ Pasword ถูกส่งไปยัง Authenticated Server เซิร์ฟเวอร์ที่ทำหน้าที่ตรวจสอบความมีตัวตน การส่งข้อมูลนั้นได้รับการเข้ารหัสไปด้วย การประยุกต์ดังกล่าวนี้คือ การควบคุมการเข้าใช้งานระบบเครือข่าย

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

 

          Private Network คือ เน็ตเวิร์คส่วนตัว ซึ่งถูกแบ่งแยกออกมาจาก Public Network ตัว Public Network หรือที่เรียกว่า Internet หรืออภิมหาเครือข่าย ซึ่งต่อโยงเป็นใยกันไปทั่วโลกนั้นเอง โดยปกติการต่อโยงของคอมพิวเตอร์ใน Public Network นั้นใช้โปรโตคอล TCP/IP ซึ่งเป็น Unique คือ เป็นกฎตายตัวว่า อุปกรณ์เครือข่าย (Network Device) แต่ละตัว ต้องมีเลข IP ที่ไม่ซ้ำกัน ถ้าซ้ำกันก็จะใช้งานไม่ได้เลย การเติบโตของกลุ่มเครือข่ายส่วนตัว (Private Network) ทำให้ต้องมีการกำหนด IP Address เฉพาะ ซึ่งเป็นข้อตกลงสากลที่กลุ่มเครือข่ายส่วนตัว (Private Network) สามารถเอาเลข IP เหล่านี้ไปใช้ได้ โดยไม่ต้องกังวลว่าจะซ้ำกับใคร เลข IP ที่นำเอาไปใช้ได้มีดังตารางต่อไปนี้

           เวลาที่ต้องการติดตั้ง VPN (Virtual Private Network) โดยมาก ถ้าเอาตามความถูกต้องและความเคยชินแล้ว เขาก็มักจะใช้ค่า IP เหล่านี้ในการกำหนดของแต่ละกลุ่มกัน แต่อย่างไรก็ตาม ถ้าไม่ทำตามนี้จะเกิดความเสียหายอะไรหรือไม่ คำตอบก็คือ โดยมากไม่พบว่าเกิดความเสียหาย เพราะโดยส่วนใหญ่การต่อเชื่อมเข้าใช้งานบรรดาเครือข่ายสาธารณะ (Public Network) จะมีอุปกรณ์เราต์เตอร์ในการแปลงหมายเลขไอพี โดยใช้เทคโนโลยี NAT (Network Address Transferring) กันอยู่แล้ว แต่ทางที่ดี เพื่อป้องกันปัญหาทั้งหมด ควรใช้เลข IP ที่กำหนดไว้ดังตารางข้างบนดีกว่า แต่ปัญหาจะเกิดขึ้น เมื่อซื้ออุปกรณ์ต่อเชื่อมอินเตอร์เน็ตพวก SOHO อย่าง 3COM Office Connect , Intel Internet Station โดยส่วนใหญ่อุปกรณ์เหล่านี้จะกำหนดมาเป็นมาตรฐานว่าตัว Gateway และตัว DHCP จะกระจายค่า IP ในกลุ่ม Private IP นี้ให้กับ Client อยู่แล้ว ซึ่งไม่ควรไปเปลี่ยนแปลงแต่อย่างใด

 

  การวัดประสิทธิภาพของเซิฟเวอร์ด้วย TCP

          TPC คือค่าประสิทธิภาพการประมวลผลแบบ Transaction การประมวลผลแบบ Transaction นี่ก็คือ เมื่อมีการประมวลผล Data Base 1 ผลลัพธ์ จะประมวลกันกี่สิบครั้งก็แล้วแต่ แต่ได้ 1 ผลลัพธ์ ส่งไปให้ทางตัวไคลเอนต์ ซึ่งร้องขอให้มีการประมวลผล โดยการส่งข้อมูล Input มาให้ แล้วให้ Server ส่ง Output กลับไป คำว่า Transaction คงคุ้นเคยกันดี สำหรับการเบิกจ่ายเงินผ่านบัตรเอทีเอ็ม หรือการต่อโทรศัพท์ทำรายการบัญชีกับธนาคาร โดยผ่านระบบ Tele Banking เวลาทำรายการ 1 รายการ ก็เรียกว่า 1 Transaction เวลาธนาคารเรียกเก็บค่าบริการ บางธนาคารก็คิดตามจำนวน Transaction นั่นแหละครับ หรือกรณีที่ทำ e-commerce ก็เหมือนกัน ทุกครั้งที่ลูกค้าซื้อของจากเวบไซต์ เจ้าของเวบก็ต้องจ่ายค่าธรรมเนียมให้ธนาคารเป็นต่อ Transaction เหมือนกัน ซึ่งก็ดูยุติธรรมดี ทั้งหมดนี้ยกตัวอย่างมาเพื่อให้เห็นภาพของคำว่า Transaction สอดคล้องกับการวัดประสิทธิภาพของเซิร์ฟเวอร์เลย เพราะเขาใช้โมดูลในการตรวจสอบที่เรียกว่า OLTP-Type อันย่อมาจาก On-Line transaction processing คือ ใช้การตรวจวัดโดยการวัดการประมวลผลกรณีมี Online Transaction เท่านั้น องค์กรที่มีหน้าที่ในการพัฒนาวิธีการเพื่อรับผิดชอบต่อการวัดประสิทธิภาพนี้คือ TPC-C ซึ่งย่อมาจาก Transaction Processing Performance Council

           วิธีการวัดของ TPC-C ใช้วัดกับเซิร์ฟเวอร์ทุกแพลตฟอร์ม จะเป็น Intel หรือ Alpha ก็เจอวิธีการเดียวกัน ที่จริงแล้ววิธีการ On-Line transaction processing นั้นแม้ว่าจะวัดกันแค่ค่าเดียว คือค่า On-Line transaction แต่วิธีนี้แหละ เป็นหัวใจเลย เพระการทำงานของเซิร์ฟเวอร์ทั้งระบบ ตั้งแต่เมนบอร์ด ซีพียู หน่วยความจำ การ์ดแสดงผล การ์ดเครือข่าย คือ ทั้งหมดที่มีส่วนในการประมวลผลจะแสดงประสิทธิภาพรวมได้ที่ค่าเดียวคือ On-Line transaction

           ดังนั้น ไม่ต้องแปลกใจ ถ้าหากเวลาซื้อเซิร์ฟเวอร์ หรือดูที่ spec ของเซิร์ฟเวอร์ อาจจะมีการนำเอาค่า TPC มาแสดงให้ดู

           เหนือกว่าค่า TPC ถ้าหากเซิร์ฟเวอร์ตัวหนึ่งมีค่า TPC สูงมากแต่ราคาก็สูงด้วยเช่นกัน กับเซิร์ฟเวอร์อีกตัวหนึ่งมีค่า TPC น้อยกว่าตัวแรก แต่ราคาถูกกว่าครึ่งหนึ่ง เวลาเลือกซื้อจะเลือกเซิร์ฟเวอร์ตัวไหน? อย่างนี้ต้องดูกันที่ Price per transaction ($/tpmC) กันแล้วล่ะครับ ถ้าตัวไหนมีราคาต้นทุนต่อการทำ 1 Transaction น้อยที่สุด ตัวนั้นล่ะคุ้มค่าที่สุด

 

การติดต่อสื่อสารระหว่างคอมพิวเตอร์ที่ใช้โปรโตคอล TCP/IP

              
          จากรูปโปรโตคอล TCP/IP ประกอบด้วยโปรโตคอลย่อยหลายโปรโตคอลซึ่งทำงานในระดับต่างๆกัน โดยที่โปรโตคอลย่อยที่ทำงานในระดับ Application Layer ได้แก่ FTP(File Transfer Protocol), TELNET(Terminal Emulator), SNMP(Simple Network Management Protocol) โปรโตคอลเหล่านี้จะเรียกใช้โปรโตคอลย่อยในระดับ Transport ด้านล่างแบบใดแบบหนึ่งระหว่าง  TCP(Transmission Control Protocol) หรือ UDP(User Datagram Protocol) และโปรโตคอลย่อยทั้งสองจะเรียกใช้โปรโตคอลระดับ Network ต่อซึ่งได้แก่ IP หรือ ICMP(Internet Communication Message Protocol)

           การทำงานในระดับ Transport ที่มีโปรโตคอลย่อย TCP หรือ UDP นั้นโปรแกรมที่อยู่ด้านบนจะเรียกใช้ผ่านช่องทางที่เป็นตัวเลขที่เรียกว่า Port Number โดยหมายเลขนี้เป็นเลขที่มาตรฐานในโปรโตคอลแบบ TCP/IP มาตรฐานของ Port Number ทั้ง TCP และ UDP ได้แสดงไว้ในตารางต่อไปนี้
 

TCP Port Number

Application Layer Services

5

Remote Job Entry

7

Echo

20

FTP Data

21

FTP Control

23

TELNET

25

SMTP

37

Time

53

Domain Name Server(DNS)

66

Oracle SQL*NET

80

World Wide Web HTTP

110

Post Office Protocol(POP3)

 
 

UDP Port Number

Application Layer Interface

7

Echo

13

DayTime

37

Time

69

Trival File Transfer Protocol(TFTP)

70

Gopher

107

Remote Telnet

161

SNMP(Simple Network Management Protocol)

 

การ Implement โปรโตคอล TCP/IP ของระบบปฏิบัติการต่างๆไม่เหมือนกัน เช่น

โปรโตคอลแบบ TCP/IP ในระดับ Application ที่สำคัญมีดังนี้

วิธีการติดตั้งโปรโตคอลTCP/IP
          ในขณะที่ติดตั้งวินโดวส์เอ็นที ถ้าได้เลือกว่าต้องการติดตั้ง Internet Information Server ด้วย โปรแกรมติดตั้งจะทำการเพิ่มโปรโตคอล TCP/IP เข้าไปด้วย หากไม่ได้ติดตั้งไว้ก่อนหรือ โปรคอล TCP/IP หายไป เราสามารถติดตั้งเพิ่มเติมได้โดยวิธีการต่อไปนี้

  1. Logon เป็น Administrator
  2. ดับเบิ้ลคลิกไอคอน Network ที่คอนโทรลพาเนล จะปรากฏจอภาพดังรูป
  3. คลิกเลือก Protocol Tab แล้วกดปุ่ม Add... จะปรากฏรายชื่อของโปรโตคอลขึ้นมาให้เลือกดังรูป
  4. คลิกที่ TCP/IP Protocol แล้วกดปุ่ม OK จะปรากฏจอภาพขึ้นมาถามว่านต้องการให้โปรแกรม DHCP(Dynamic Host Configuration Protocol) Server เป็นผู้กำหนด IP Address แทนการกำหนดด้วย manual หรือไม่
    ( DHCP Server เป็นโปรแกรมที่ทำหน้าที่แจก IP Address ให้กับเครื่องลูกข่ายโดยอัตโนมัติ) ถ้าต้องการใช้ความสามารถนี้จะต้องระบุเครื่องที่ทำหน้าที่เป็น DHCP Server ให้กับเครื่องลูกข่ายไว้
  5. ให้ตอบ Yes ในกรณีที่มี DHCP Server หรือตอบ No ถ้าต้องการกำหนด IP Address ด้วย manual วินโดวส์เอ็นทีจะถามตำแหน่งของ CD-ROM ของวินโดวส์เอ็นที ให้ระบุตำแหน่งของ CD-ROM แล้วกดปุ่ม Continue โปรแกรมจะอ่าน CD-ROM เพื่อนำข้อมูลที่ต้องการเข้ามาใช้

การปรับแต่งIPAddress
          ถ้าไม่ได้เลือกใช้ DHCP ไว้เราจะต้องกำหนดข้อมูลที่เกี่ยวข้องสำหรับโปรโตคอล TCP/IP ได้แก่ IP Address, Subnet Mask, Default Gateway และข้อมูลของ DNS

  1. คลิกที่ Binding Tab เพื่อให้โปรโตคอลที่เพิ่มเข้าไปทำการ Bind กับ Services ต่างๆที่มี แล้วคลิกที่ Protocol Tab คลิกเลือก TCP/IP Protocol ในรายการแล้วกดปุ่ม Properties จะปรากฏจอภาพ Microsoft TCP/IP Properties ดังรูป
  2. ถ้ามี DHCP Server ในเครือข่ายให้เลือก Obtain an IP Address from a DHCP Server แต่ถ้าจะกำหนด IP Address เองให้เลือก Specify an IP Address

  3. ใส่ IP Address, Subnet Mask และ Default Gateway
  4. คลิกที่ DNS Tab จะปรากฏจอภาพดังรูป
  5. ใส่ข้อมูลของ

  6. เมื่อเสร็จแล้วตอบ OK และตอบ Close จากนั้นทำการ Restart เครื่องใหม่เพื่อให้การเปลี่ยนแปลงมีผล

การใช้โปรแกรมที่เกี่ยวข้องกับโปรโตคอลTCP/IP
          เมื่อติดตั้งโปรโตคอล TCP/IP เสร็จแล้ว เราสามารถนำเอาโปรแกรมสำหรับเครื่องลูกข่ายมาใช้ทำงานกับโปรโตคอลนี้ได้ เช่น FTP Client, WWW Browser, Telnet เป็นต้น โปรแกรมที่กล่าวมานี้อาจเป็นโปรแกรมที่เขียนขึ้นมาโดย Third Party ต่างๆ ในรูปต่อไปนี้แสดงการทำงานของโปรแกรม FTP Client ซึ่งทำงานในโหมดกราฟฟิค

          ในวินโดวส์เอ็นทีเมื่อติดตั้งโปรโตคอล TCP/IP แล้วจะมีการ Copy โปรแกรม Utility ต่างๆเพื่อช่วยในการจัดการบริหารโปรโตคอล TCP/IP มาด้วย โปรแกรมเหล่านี้เป็นโปรแกรมที่ทำงานในลักษณะที่เป็น Command Line ได้แก่

MENU