การเขียนโปรแกรมเครือข่ายคอมพิวเตอร์คืออะไร?

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

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

คำทั่วไปที่ใช้เพื่ออธิบายโปรแกรมเหล่านี้คือ 'ระบบกระจาย' โดยทั่วไปหมายความว่าแต่ละส่วนของโปรแกรมได้รับการแจกจ่ายไปยังหลาย ๆ ที่ โปรแกรมทำหน้าที่เหมือนระบบเดียว แต่ต้องการเครือข่ายเพื่อให้ระบบเหล่านั้นโต้ตอบ

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

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

ประเภทที่สามของการเขียนโปรแกรมเครือข่ายคอมพิวเตอร์คือ peer-to-peer ในลักษณะนี้โปรแกรมต่างก็มีทั้งไคลเอนต์และเซิร์ฟเวอร์ทั้งการส่งและรับข้อมูลทั้งหมดในเวลาเดียวกัน โดยทั่วไปโปรแกรมเหล่านี้จะเชื่อมต่อกับโปรแกรมอื่น ๆ ที่มีประเภทเดียวกันทำให้ระบบปิดประกอบด้วยระบบอิสระหลายร้อยระบบ นี่เป็นลักษณะที่สมดุลที่สุดของรูปแบบการเขียนโปรแกรมเครือข่ายคอมพิวเตอร์เนื่องจากแต่ละโปรแกรมมีความเหมือนกัน