350 likes | 552 Views
Networking. oslecture08. Networking. ระบบปฏิบัติการเป็นตัวจัดการเครือข่ายเพื่อการสื่อสารกับคอมพิวเตอร์เครื่องอื่นๆ โดยเฉพาะอินเทอร์เน็ต วัตถุประสงค์โดยทั่วไปของระบบปฏิบัติการจะต้องจัดหาเครือข่ายสำหรับ ICMD, TCP, และ UDP เครือข่ายกองสำหรับ ICMP, TCP และ UDP . Networking (ต่อ).
E N D
Networking oslecture08
Networking • ระบบปฏิบัติการเป็นตัวจัดการเครือข่ายเพื่อการสื่อสารกับคอมพิวเตอร์เครื่องอื่นๆโดยเฉพาะอินเทอร์เน็ต วัตถุประสงค์โดยทั่วไปของระบบปฏิบัติการจะต้องจัดหาเครือข่ายสำหรับICMD, TCP, และ UDPเครือข่ายกองสำหรับ ICMP, TCP และ UDP
Networking(ต่อ) • ในการสื่อสารผ่านโปรโตคอล IP ซึ่งโดยปกติจะกระทำผ่านอีเทอร์เนตสำหรับ LAN แต่สามารถทำได้โดยผ่านสาย serial หรือ dialup (SLIP, PPP) เพื่อที่จะทำความ เข้าใจทั้งหมดนี้เราจำเป็นต้องทำให้มันดูง่ายและทำงานจากชั้นล่างขึ้นไปชั้นบน (เช่นโปรแกรมเว็บเบราเซอร์)
Hardware Layer oslecture08
Hardware Layer • เราจะใช้Ethernet ให้เป็นชั้นการเชื่อมต่อฮาร์ดแวร์ เนื่องจากคอมพิวเตอร์เกือบทุกเครื่องในทุกวันนี้มีพอร์ตสำหรับEthernet เทคโนโลยี Ethernet ได้รับการพัฒนาเป็นทางเลือกราคาถูกสำหรับ IBM ของเครือข่ายวงแหวนแบบปิด Token ringใช้เครือข่ายดาว (star network) และการส่งสัญญาณระหว่างเครื่อง โดยเครื่องจะสามารถส่งได้ เมื่อมี tokenตั้งแต่หนึ่ง token ไม่มีทางที่จะไม่มีการเกิดCollision (การชนกันของแพคเก็ต)บนเครือข่าย การทำงานแบบวงแหวนทำงานได้ดีคือโหลดเร็ว แต่มีปัญหาคือต้นทุนสูง
Hardware Layer(ต่อ) • เทคโนโลยีแบบวงแหวนต้องมีใบอนุญาตจาก IBM สำหรับเป็นสิทธิบัตร ทั้งยังต้องใช้ฮับพิเศษและสายที่มีคุณภาพสูงและราคาแพง เนื่องจากจำนวนโดยรวมของหน่วยขายที่ต่ำ ราคาไม่เหมาะสม อุตสาหกรรมพัฒนาไปอย่างมีทางเลือก เรียกว่า Ethernet Ethernetคือ เทคโนโลยี CSMA /CD, คล้ายกันมากกับสายโทรศัพท์ (MA ในชื่อ)สายเคเบิลจะมีราคาถูกเกือบจะเหมือนสายโทรศัพท์ Ethernet อนุญาตให้ใครก็ได้ที่ทำการส่งเวลาและตรวจหา collisions (CD) ในชื่อ
Hardware Layer(ต่อ) • Ethernet cards, เมื่อตรวจพบการชนกันของข้อมูล (Collision) จะใช้ exponential backoff เพื่อที่จะสร้าง longer timeouts ก่อนการทดสอบการส่งสัญญาณภายใต้การโหลดแบบง่ายๆ เครือข่ายจะเร็วมากเนื่องจากไม่ต้องรอโทเคน ภายใต้การโหลดแบบที่ยาก เครือข่ายจะล้มเหลว เนื่องจากทุกคนต่างก็มีการชนกันระหว่างส่งสัญญาณ หรือการรอเป็นเวลานานสำหรับการส่งอีกครั้งวงแหวนโทเคน (token ring)เป็นวิธีแก้ปัญหาที่ดีที่สุด อย่างไรก็ตามทุกวันนี้ Ethernet cards มีราคาถูกมาก (เนื่องจากว่ามันพอใช้ได้ และไม่จำเป็นต้องให้ IBM อนุญาต) ซึ่งสายเคเบิลจะถูกกว่า
Hardware Layer(ต่อ) • ฮับก็จะถูกกว่าเนื่องจากไม่จำเป็นต้องตรวจสอบ /ป้องกันสัญญาณซ้ำหรือสัญญาณสูญหายและคนโดยส่วนใหญ่จะไม่ชอบของแพง ทำให้วันนี้เราจะใช้Ethernet และมันมีการทำงานอย่างไร? การส่งสัญญาณจะส่งในในหน่วยที่เรียกว่าเฟรม เครื่องทั้งหมดบนสายบุคคลหนึ่งสามารถสื่อสารกันโดยตรงและ LAN นี้เรียกว่าส่วน (segment) การ์ดเครือข่ายแต่ละ(NIC - คอนโทรลเลอร์อินเตอร์เฟซเครือข่าย) ที่อยู่MAC ไม่ซ้ำแต่ละเฟรมมีข้อมูลเกี่ยวกับการส่งและรับที่อยู่ MAC และช่วงเวลาที่มีอยู่ใช้สำหรับถ่ายทอดให้กับทุกคน
Hardware Layer(ต่อ) • จะเกิดอะไรขึ้นเมื่อคุณต้องการติดต่อกับเครื่องซึ่งไม่ได้อยู่บนส่วนของLAN ..... • เครื่องพิเศษที่เรียกว่าเราเตอร์จะต้องส่งต่อแพ็คเกตของคุณอย่างไรก็ตาม นี่เป็นการทำแพ็คเกตใหม่บนเซกเมนต์กลุ่มใหม่ซึ่งบรรจุข้อมูล payload แต่นี้จะกระทำโดยการใหม่แพคเก็ตในกลุ่มใหม่ที่มีข้อมูล . จึงสามารถติดต่ออื่นส่วนจะกระทำที่ชั้นสูงกว่า Ethernet เมื่อมีการเข้าชมมากดังนั้น Ethernet ในตอนเริ่มต้นจะล้มเหลวนี้เรียกว่า congestion (แออัด) วิธีการแก้การแออัดคือการแบ่งส่วนยาวเป็นสองเซกเมนต์หรือปรับความเร็ว LAN ของคุณ
IP layer oslecture08
IP layer • ชั้นถัดไปที่จะใช้เป็น IP (Internet Protocol layer) ชั้นนี้จะถุกห่อหุ้มอย่างมิดชิดในethernet frames บน local LANs และเราเตอร์ส่ง payloads เพื่อ LANs อื่นๆโดยการสร้าง Ethernet frames บน LANs ส่วนอื่นใหม่ จะอธิบายเกี่ยวกับ IPv4 รุ่นของโปรโตคอลอินเทอร์เน็ตที่ใช้กันอย่างแพร่หลายในปัจจุบัน เช่น MAC สำหรับ Ethernetinterface card, Ethernet แต่ละตรรกะในคอมพิวเตอร์ต้องมีตัวระบุ เรียกว่าหมายเลข IP ตัวอย่างเช่น 1.2.3.4
IP layer(ต่อ) • IP มี 4 ส่วน แต่ละส่วนจะคั่นด้วย dot ส่วนหนึ่งจะเป็นจำนวนเต็มระหว่าง 0 และ 255 เหล่านี้จะแสดง 4 bytes ที่ระบุตัวตนของเครื่อง ชั้น IP ส่งแพ็คเก็ตซึ่งวางแล้วใน Ethernet frames แต่ละแพ็คเก็ตจะมี IP ต้นทาง และ IP ปลายทาง อย่างไรก็ตาม เรารู้ว่าระหว่างสองเครื่องสามารถเชื่อมต่อหลายการเชื่อมต่อ นี่คือผลสำเร็จในการเพิ่มจำนวนพอร์ตไปยังแพ็คเก็ต IP สำหรับแหล่งที่มาและปลายทาง. บริการสาธารณะที่เป็นที่รู้จักกันดีมีหมายเลขได้รับมอบหมายจาก IANA เช่น 80 สำหรับ http, 22 สำหรับ SSH ฯ
IP layer(ต่อ) • เราเตอร์ที่อยู่ในชั้นฮาร์ดแวร์ทำงานได้ตามปกติกับแพ็คเก็ต IP ขณะที่ เครื่องลูกข่ายเป็น a leaf node (หนึ่ง Ethernet interface) เราเตอร์มีหลาย homed (มากกว่า interface Ethernet) เราเตอร์มีเส้นทางตารางเพื่อตรวจสอบแพ็คเก็ตที่จะถูกส่งเมื่อแพ็คเก็ตมาถึงบนหน้าจอใดๆของปลายทางจะตรวจสอบ IP แล้วO / S จะ เปรียบเทียบช่วง IP ในตารางเส้นทางและเลือกอินเตอร์เฟซที่ถูกส่งแพ็คเก็ตออกไป หากแพ็คเก็ตมีเราเตอร์ที่อยู่สุดท้ายที่อยู่ปลายทาง แล้ว port ปลายทางจะตรวจสอบหากมีโปรแกรมที่เชื่อมต่อกับพอร์ต
IP layer(ต่อ) • แพ็คเก็ตจะถูกส่งไปยังแอปพลิเคชั่น แต่ถ้าไม่มีคำสั่งไปยังพอร์ต แพ็คเก็ตก็จะหยุด บางครั้ง (ขึ้นกับองค์ประกอบเครื่อง) ข้อความจะถูกส่งกลับไปยังเครื่องเพื่อที่จะอธิบายสิ่งนี้ • ตารางของเส้นทางจะเป็นแบบง่ายๆ และมีหนึ่งแถวสำหรับแต่ละ interface Ethernet ที่มีช่วง IP สำหรับเครื่องที่เชื่อมต่ออินเตอร์เฟส และมีแถวพิเศษคือแถว 'default' ที่ใช้ระบุที่ส่งแพ็คเก็ต ซึ่งจะไม่ใช่ตัวที่มีอินเตอร์เฟสเชื่อมต่ออยู่
IP layer(ต่อ) • เป้าหมายนั่นคือเราเตอร์อื่นๆที่เรียกว่าเกตเวย์ เมื่อคุณเชื่อมต่อเว็บเบราเซอร์และโหลดหน้าเว็บ คุณจะผ่านเราเตอร์มากมายจนกระทั่งแพ็คเก็ตสุดท้ายของคุณเข้าถึงเว็บเซิร์ฟเวอร์แล้วจะส่งแพ็คเก็ตกลับไปยังคุณ ซึ่งจะย้อนกลับผ่าน เราเตอร์เดียวกับที่เคยผ่านมา ในการออกแบบอินเทอร์เน็ตทุกเครื่องบนโลกจะได้รับ IP ที่ไม่ซ้ำกัน โปรโตคอล IP และเส้นทางที่ง่ายและสะดวก
People are evil • ข่าวร้ายคือมีคนจำนวนมากที่คิดชั่ว พวกเขาใช้เวลาส่วนใหญ่ในการโจมตีเครื่องที่อยู่นอกเครือข่าย ปฏิกิริยากับโต้ตอบคือไฟร์วอลล์เครื่องไฟร์วอลล์จะเป็นเราเตอร์ธรรมดา แต่แทนที่ด้วยตารางเส้นทางที่มีตารางขยายพอร์ตและข้อมูลอื่นๆ ทุกวันนี้ไฟร์วอลล์จะมีประสิทธิภาพ และสามารถทราบว่าการเชื่อมต่อได้รับการเปิดและทราบแพ็คเก็ตขาเข้าจากเครือข่ายนอกสำหรับสร้างการเชื่อมต่อจากเครือข่ายขาเข้ากับเครื่องต่างประเทศ ใบอนุญาตให้มากที่สุด
Firewalls oslecture08
Firewalls • นโยบายทั่วไปสำหรับเครือข่ายขนาดเล็กจำนวนมาก ซึ่งเป็นที่แพ็คเก็ตขาเข้าจากภายนอกเท่านั้นที่จะไดด้รับอนุญาต หากพวกเขาเป็นส่วนหนึ่งของการจัดตั้งการเชื่อมต่อ ทุกแพ็คเก็ตอื่นๆหยุด หลังจากนั้นหากนักโจมตีไม่ได้รับแพคเก็ตของเครื่องของคุณเครื่องเขาไม่สามารถโจมตีโดยตรง การปิดไฟร์วอลล์ที่พอร์ตทั้งหมดจะถูกปิดโดยเริ่มต้น และคุณจะต้องเปิด ซึ่งเป็นตัวเลือกที่ดีที่สุด การเปิด
Firewalls(ต่อ) • ไฟร์วอลล์จะช่วยให้ทุกอย่าง ยกเว้นสิ่งที่คุณป้องกัน (บัญชีดำ) ไฟร์วอลล์โดยทั่วไปจะต้องป้องกันการเชื่อมต่อจากต่างประเทศที่ไม่ได้รับอนุญาตเช่นพอร์ต 25 (อีเมล) เพื่อหยุดสแปม ผู้ดูแลระบบส่วนใหญ่นี้ยังป้องกันต่างประเทศยกเว้น 22, 80, 443, 21 เป็นการพยายามที่จะป้องกันการสตรีมเนื้อหา เช่น bittorrentหรือเสียงสตรีมมิ่ง เน้นขอบเขตระหว่างสิ่งที่ O / S ต้องจัดการ (ความสามารถ)และสิ่งที่นายจ้างต้องจัดการ (นโยบาย)หัวหน้าจะตัดสินใจว่าจะป้องกันหรืออนุญาตและไฟร์วอลล์มาดำเนินนโยบาย ไม่มีใครเป็นนโยบายที่ดีที่สุด – มันขึ้นอยู่กับหัวหน้า
Firewalls(ต่อ) • หากทราบว่าตารางและ O / support S ก็จะสะดวกในการเพิ่มคุณสมบัติเช่นการเชื่อมต่อจำกัด (เฉพาะการเชื่อมต่อ X พร้อมกันจาก IP ที่ในช่วง Y) อัตราจำกัด (เฉพาะ X การเชื่อมต่อในเวลา Y) เวลาจำกัด (เชื่อมต่อ X เฉพาะในช่วงเวลา Y) และมากกว่านั้น ความยืดหยุ่นนี้คือสิ่งที่ทำให้สามารถควบคุมไฟร์วอลล์ที่ซับซ้อนแต่จะเป็นแนวความคิดจะง่ายๆ ไฟร์วอลล์จะทำงานที่ชั้น IP แต่สามารถรับรู้ ICMP, TCP, และUDP
Protocols oslecture08
Protocols • ICMP เป็น Internet Control Message Protocol ใช้สำหรับ ping, tracerouteและส่งข้อผิดพลาด เช่นเครือข่าย unreachable หรือโฮสต์ unreachable ARP คือรายละเอียดที่อยู่โปรโตคอล และจะใช้เพื่อค้นพบสิ่งที่ MACต้องการสำหรับ IP ส่วนRARP คือ reverse ARP และใช้เพื่อกำหนด IP เป็นจำเป็นสำหรับ MAC สิ่งนี้ใช้เพื่อช่วยในการวางแผนที่ระหว่าง IP และชั้น Ethernet ส่วนใหญ่การประยุกต์ใช้ทั้ง UDP หรือ TCP ผ่าน IP UDP เป็น Unix Datagram Protocol และTCP เป็น Transmission Control Protocol
UDP vs. TCP • UDP ส่งdatagramsไม่มีการตอบกลับจากผู้รับและจึงไม่มีทางรู้เลยถ้าแพ็คเก็ตมาถึงปลายทาง UDPใช้สำหรับ DNS สตรีมมิ่งเนื้อหาและมันขึ้นอยู่กับแอปพลิเคชั่นที่จะเพิ่มเข้าไปชั่วคราวๆ / ทดลองตรรกะ TCP กำหนดค่ายาวนานการเชื่อมต่อระหว่างสองพอร์ต(โดยต่างเครื่องกัน) และดูแลเกี่ยวกับการสั่งซื้อแพ็คเก็ต การส่งซ้ำในความผิดพลาดฯลฯ ใช้สำหรับ http, https และ SSH เมื่อO / S ทำงานมากๆมันจะช้าลงกว่า UDP แต่ง่ายต่อการใช้และเชื่อถือได้ TCPจะดำเนินการใช้ UDP แต่เพิ่มชั้นสำหรับการส่งและรับ
TCP • แพ็คเก็ต, การรับแพ็คเก็ต, การหยุดพักชั่วคราว และรายงานการสนับสนุนแพ็คเก็ต (เพื่อแพ็คเก็ตมาถึงในลำดับที่ถูกต้องในแอปพลิเคชั่น) ใช้ความคิดเกี่ยวกับการดาวน์โหลดเว็บ แอปพลิเคชั่นของคุณเปิด socket ของ TCP ไปยังเครื่องระยะไกลจริงๆแล้ว libcของคุณเชื่อมต่อกับเคอร์เนลของคุณที่ใช้แพ็คเก็ตที่ใช้ TCP UDP และ ICMP ซึ่งใช้เป็นโครงสร้างพื้นฐานใน Ethernet โครงสร้างเหล่านี้สุดท้ายแล้วจะอยู่ในเราเตอร์ของคุณ (อาจจะผ่านสะพาน หรือผ่านสวิตซ์ฯลฯ)
TCP(ต่อ) • จากนั้นกระบวนการที่เกิดขึ้นในการกลับขึ้นไปชั้น IP ก็จะเข้าสู่เราน์เตอร์และไฟร์วอลล์หากยังไม่ได้ถูกบล็อกก็กลับไปยังไดรเวอร์อุปกรณ์สำหรับอินเตอร์เฟซที่สองและโครงสร้าง Ethernet จะถูกสร้างขึ้นกับข้อมูลpayload เพื่อส่งไป(hops) ตามปกติหลาย hops ต้อง สุดท้ายเว็บเซิร์ฟเวอร์จะได้รับ payload จาก socket TCP จะส่งการตอบกลับ
Internet for your O/S oslecture08
Internet for your O/S • ดังนั้น อะไรที่ O / S ต้องจัดการเพื่อให้การสนับสนุนแนวความคิด? มันต้องมีไดรเวอร์อุปกรณ์ควบคุม Ethernet cards ฉันต้องสนับสนุน protocol IP, และ ARP การวางแผนที่จากหมายเลข IP ที่ MAC จะต้องสนับสนุน 3 โปรโตคอลในด้านบนของ IP: ICMP, UDP และ TCP Routing สำหรับ เครื่องmultihomedและสำหรับเครื่อง firewalling ทั้งหมดต้องได้รับการสนับสนุน ซึ่งคุณสามารถคาดเดา สิ่งที่เกี่ยวข้องกันและอยู่ภายใน O / S kernel
Internet for your O/S(ต่อ) • สุดท้ายคือเรื่องของการบริหาร เครื่องมือต้องมีการกำหนดค่าเครือข่ายและ firewalling เนื่องจาก IP, TCP, ICMP และ UDP โปรโตคอลเป็นมาตรฐานทั้งหมด มีความเป็นไปได้ที่จะเชื่อมต่อเครือข่ายระหว่างโปรแกรมต่างๆในระบบปฏิบัติการ ในความเป็นจริงนี้โดยทั่วไปเว็บเซิร์ฟเวอร์ไม่สามารถรันบน Windows และลูกข่ายก็จะไม่รันบน Windows ต่อไปจะพูดคุยเกี่ยวกับหมายเลข IP ซึ่งคุณก็รุ้ว่าคนส่วนใหญ่จะไม่สนใจที่จะจำมัน DNS จะใช้ในการเป็นแผนที่ระหว่างหมายเลข IP และมีคุณสมบัติครบถ้วนที่จะเป็นโฮสต์ ชื่อ DNS เป็นระบบที่แปลกตั้งแต่ที่เคยได้ใช้มา
Internet for your O/S(ต่อ) • ทั้ง UDP และโปรโตคอล TCP จะใช้ UDP สำหรับการตอบสั้นๆ และ TCP การตอบกลับนานเหมือนกับการโอน เพื่อให้ทั้งสองแมปมีความแตกต่างกันสำหรับการเชื่อมต่อส่วนใหญ่ ครั้งแรกเริ่มจากชื่อ IP แล้วจาก IP ไปยัง MAC แต่ชื่อที่ IP เปลี่ยน0tเกิดขึ้นกับลูกข่ายและตั้งแต่นั้นมาทุกอย่างทำด้วยหมายเลข IP
Security oslecture08
Security • จนถึงขณะนี้เราไม่ได้พูดคุยเกี่ยวกับการรักษาความปลอดภัยเครือข่ายยกเว้น firewalling ที่จะทำหน้าที่ปฏิเสธการเชื่อมต่อตามกฎต่างๆ ทันทีที่แพ็กเกตอยู่บน LAN, เครื่องทุกเครื่องใน LAN จะสามารถอ่านได้ว่าถ้ามันมีการ์ด LAN ใน promiscuous mode และใช้ sniffersniffer คือ เครื่องมือการวิเคราะห์ที่ใช้สำหรับแก้จุดบกพร่องในโปรแกรม และจะแสดงข้อมูลในแพ็คเก็ตทั้งหมด แต่แฮกเกอร์ยังใช้ sniffers เพื่อลองดูข้อมูลสำหรับลับหรือรหัสผ่าน.
Security(ต่อ) • ถ้าคุณส่งเอกสารหรือพิมพ์คุณอาจไม่ต้องการให้ใครเห็นว่ากำลังทำอะไรระบบอินเทอร์เน็ตได้รับการออกแบบสำหรับใช้วิชาการใน 1,970 และมีมากเกี่ยวข้องความปลอดภัยน้อย วันนี้มีการใช้อินเทอร์เน็ตสำหรับธุรกิจและรัฐบาลและตอนนี้คุณต้องใช้การเข้ารหัสเพื่อรักษาความลับของคุณ คุณสามารถเพิ่มการเข้ารหัสใน 3ที่ ประการแรกคุณสามารถเข้ารหัสในเอกสาร จากนั้นก็ทำการส่งมัน คล้ายกับการใช้ gnupgในการเข้ารหัสไฟล์ แล้วแนบไฟล์ ประการที่สองคุณสามารถใช้โปรแกรมเพื่อที่จะ encrypts ในการส่งข้อมูลทั้งหมด มากกว่า Sockets นี่คือสิ่งที่ SSH, SFTP และ SCP ทำเพื่อคุณ
Security(ต่อ) • สุดท้ายคุณสามารถใช้การเข้ารหัสในชั้นเครือข่าย นี่คือสิ่งที่ IPSecทำ IPSec เพิ่มการเข้ารหัสในระดับ IP เพื่อ sniffer ที่มีทั้งหมดคุณอาจจะเห็น MAC addresses, หัวเรื่อง IP, และสุ่มข้อมูล apparently payloads ปัญหาของ IPSec คือเครื่องในทุกเครือข่ายและเราเตอร์ทั้งหมดต้องใช้ IPSec สำหรับการใช้งาน วันนี้คนส่วนใหญ่ใช้แอปพลิเคชั่นในการเข้ารหัสด้วย tunnels สำหรับ
Security(ต่อ) • ข้อมูลที่สำคัญและพวกเขาจะส่งทุกอย่าง 'อย่างเปิดเผย' ตัวอย่างที่มีชื่อเสียงคือ Telnet โดย Telnet เป็นยูนิกดั้งเดิมที่ควบคุมล็อกอินโปรแกรมและทำงานได้ดี แต่อย่างไรก็ตาม ทุกอย่างรวมทั้งรหัสผ่านของคุณจะถูกเปิดเผย เดี๋ยวนี้คนใช้งาน opensshเนื่องจากใช้การเข้ารหัสเพื่อซ่อนเนื้อหาข้อมูล