Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 101 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
101
Dung lượng
392,5 KB
Nội dung
Ngo duc tho duong minh chau Chơng I. Mạng máy tính Chơng I . Mạng máy tính 5 .I Mạng máy tính 5 .II Phân loại mạng máy tính 5 .II.1. Phân loại theo kiến trúc (topology) của mạng 5 .II.1.1. Mạng điểm-điểm (point-to-point network) 6 .II.1.2. Mạng quảng bá (broadcast network) 6 .II.2. Phân loại theo phơng thức chuyển mạch (Swiched Method) 7 .II.2.1. Chuyển mạch kênh (Circuit Swiched Network) 7 .II.2.2. Chuyển mạch tin báo (Message Swiched Network) 7 .II.2.3. Chuyển mạch gói (Packed Swiched Network) 7 .II.3. Phân loại theo phạm vi hoạt động 7 .II.3.1. Mạng LAN (Local Area Network) 7 .II.3.2. Mạng MAN (Metropolian Area Network) 7 .II.3.3. Mạng WAN (Wide Area Network) 8 .II.3.4. Liên mạng (internet) 8 Chơng II . Giao thức truyền thông và Các mô hình tham chiếu 11 .I Giao thức truyền thông 11 .II Mô hình tham chiếu OSI 11 .II.1. Giới thiệu mô hình OSI 11 .II.2. Các tầng của mô hình OSI 13 .II.2.1. Tầng vật lý (Physical layer) 13 .II.2.2. Tầng liên kết dữ liệu (Data link layer) 14 .II.2.3. Tầng mạng (Network layer) 14 .II.2.4. Tầng giao vận (Transport layer) 14 .II.2.5. Tầng phiên (Session layer) 15 .II.2.6. Tầng trình diễn (Presentation layer) 15 .II.2.7. Tầng ứng dụng (Application layer) 15 .II.3. Những vấn đề về OSI 16 .III Kiến trúc giao thức IPX/SPX 16 .III.1. Kiến trúc giao thức IPX/SPX 17 .III.2. Gói tin IPX 17 .III.3. Cơ chế hoạt động của Novell Netware 18 Chơng III. Giao thức TCP/IP 20 .I Giao thức TCP/IP 20 .II Kiến trúc của bộ giao thức TCP/IP 21 .II.1. Kiến trúc phân tầng của TCP/IP 21 .II.2. Cơ chế địa chỉ Internet 24 .II.2.1. Địa chỉ lớp A 25 .II.2.2. Địa chỉ lớp B 26 .II.2.3. Địa chỉ lớp C 26 .II.3. Mạng con và Subnet mask 26 .III Tầng mạng (Network Layer) 28 1 Ngo duc tho duong minh chau .IV Tầng Internet (Internet Layer) 29 .IV.1. Gói tin IP 30 .IV.2. Giao thức chuyển địa chỉ ARP (Address Resolution Protocol) và cơ giao thức chuyển ngợc địa chỉ RARP (Reverse Address Resolution Protocol) 33 .IV.2.1. Chuyển giao trực tiếp 33 .IV.2.2. Chuyển giao địa chỉ động 33 .IV.2.3. Gói tin ARP 34 .IV.3. Giao thức điều khiển truyền tin (Internet Control Message Protocol - ICMP) 36 .IV.3.1. Gói tin ICMP 36 .IV.3.2. Điều khiển dòng dữ liệu 37 .IV.3.3. Thông báo lỗi 37 .IV.3.4. Định hớng lại 37 .IV.3.5. Kiểm tra trạm làm việc 38 .IV.4. Thuật toán dẫn đờng 38 .V tầng giao vận 42 .V.1. Giao thức không kết nối (User Datagram Protocol - UDP) 42 .V.1.1. Gói thông tin UDP 42 .V.1.2. Phân kênh, hợp kênh và Ports 43 .V.2. Giao thức điều khiển truyền tin (Transmission Control Protocol - TCP) 45 .V.2.1. Gói tin TCP 48 .V.2.2. Cổng, kết nối và điểm kết nối 48 .VI Tầng ứng dụng của TCP/IP 50 .VI.1. Dịch vụ tên miền (Domain Name Service - DNS) 50 .VI.2. Đăng nhập từ xa (Telnet) 52 .VI.3. Th điện tử (Electronic Mail) 53 .VI.4. Giao thức truyền tệp (File Transfer Protocol - FTP) 55 .VI.5. Nhóm tin (News groups) 56 .VI.6. Tìm kiếm tệp (Archie) 56 .VI.7. Tra cứu thông tin theo thực đơn (Gopher) 56 .VI.8. Tìm kiếm thông tin theo chỉ số (WAIS) 56 .VI.9. Siêu văn bản (WWW) 57 Chơng IV. Xây dựng ứng dụng truyền tệp 58 .I Giao diện lập trình 58 .I.1. Giao diện lập trình 58 .I.2. Network I/O và file I/O 59 .I.3. Làm việc với Socket 60 .I.3.1. Socket 60 .I.3.2. Địa chỉ Socket 61 .I.3.3. Một số lời gọi tạo lập socket 63 .I.3.4. Một số lời gọi gửi dữ liệu qua socket 66 .I.3.5. Một số lời gọi nhận dữ liệu từ socket 68 2 Ngo duc tho duong minh chau .II Mô hình Client-Server 68 .II.1. Mô hình Client-Server sử dụng dịch vụ không kết nối 69 .II.2. Mô hình Client-Server sử dụng dịch vụ hớng kết nối 71 .III Xây dựng chơng trình truyền tệp 72 .III.1. Thiết kế và cài đặt chơng trình 72 .III.1.1. Giao thức ứng dụng đợc xây dựng và sử dụng trong chơng trình 72 .III.1.2. Cài đặt chơng trình 74 .III.2. Một số vấn đề nảy sinh trong quá trình thực hiện và cách giải quyết 76 .III.2.1. Vấn đề chuyển đổi tệp giữa hai hệ điều hành 76 .III.2.2. Vấn đề về một số lệnh tơng tác 78 K ết luận 79 Tài liệu tham khảo 80 Phụ lục A Một số kỹ thuật mạng cục bộ 81 .I Mạng Ethernet và IEEE 802.3 81 .II Mạng Token-Pasing Rings (IEEE 802.5) 81 .III Mạng Token-Passing Busses (IEEE 802.4) 82 Phụ lục B Một số kỹ thuật chọn đờng đi tối u 84 .I Giải thuật Dijkstra cho việc chọn đờng tập trung 84 .II Giải thuật Ford& Fulkerson cho việc chọn đờng phân tán 85 Phụ lục C Văn bản chơng trình (phần client) 87 .I Chơng trình chính (main.c) 87 .II Th viện sử dụng (Socket.c) 94 3 Ngo duc tho duong minh chau 4 Ngo duc tho duong minh chau Chơng I . Mạng máy tính .I Mạng máy tính Mạng máy tính là hệ thống các máy tính độc lập (autonomous) đợc kết nối với nhau. Khái niệm độc lập ở đây có nghĩa là chúng không có mối quan hệ chủ/tớ (master/slave) rõ ràng. Hai máy tính đợc gọi là đợc kết nối với nhau nếu chúng có khả năng trao đổi thông tin. Sự kết nối có thể thông qua dây dẫn, tia laser, sóng điện từ hay vệ tinh viễn thông Việc kết nối các máy tính có những u điểm sau Sử dụng chung tài nguyên (resource sharing): Chơng trình, dữ liệu, thiết bị có thể đợc dùng chung bởi ngời dùng từ các máy tính trên mạng. Tăng độ tin cậy của hệ thống thông tin (reliability): Nếu một máy tính hay một đơn vị dữ liệu nào đó bị hỏng thì luôn có thể sử dụng một máy tính khác hay một bản sao khác của dữ liệu, nhờ đó, khả năng mạng bị ngừng sử dụng đợc giảm thiểu. Tạo ra môi trờng truyền thông mạnh giữa nhiều ngời sử dụng trên phạm vi địa lý rộng: Mục tiêu này ngày càng trở nên quan trọng nhất là khi mạng máy tính đã phát triển trên phạm vi toàn cầu nh ngày nay. Tiết kiệm chi phí: Do tài nguyên đợc dùng chung, hệ thống tin cậy hơn nên chi phí thiết bị và bảo dỡng của mạng máy tính thấp hơn so với trờng hợp máy tính riêng lẻ. .II Phân loại mạng máy tính .II.1. Phân loại theo kiến trúc (topology) của mạng Phân loại theo kiến trúc là cách phân loại mạng máy tính theo cách kết nối các máy tính trong mạng 5 Ngo duc tho duong minh chau .II.1.1. Mạng điểm-điểm (point-to-point network) Các đờng truyền nối các cặp nút với nhau, mỗi nút có trách nhiệm lu trữ tạm thời sau đó chuyển tiếp dữ liệu tới đích. Cách làm việc này còn gọi là lu và chuyển tiếp (store-and-forward). Mạng điểm-điểm cần sử dụng lợng cáp nối lớn hoặc nhiều đờng điện thoại thuê riêng (leased telephone lines), mỗi đờng nối một cặp điểm làm việc. Nếu 2 điểm làm việc muốn gửi thông tin cho nhau mà không có đờng truyền trực tiếp, dữ liệu của chúng cần đợc truyền qua một số nút khác do đó, thuật toán dẫn đờng có vai trò rất quan trọng trong kiến trúc mạng điểm-điểm. .II.1.2. Mạng quảng bá (broadcast network) Tất cả các nút cùng dùng chung một đờng truyền vật lý. Dữ liệu đợc tiếp nhận bởi tất cả các máy tính, nếu máy tính nào kiểm tra thấy gói tin đợc gửi cho mình, nó sẽ giữ lại và xử lý. Các mạng quảng bá thờng cho phép sử dụng địa chỉ broadcasting để gửi thông báo tới toàn mạng. 6 Star TreeRing SatelliteBus Ring Ngo duc tho duong minh chau .II.2. Phân loại theo phơng thức chuyển mạch (Swiched Method) .II.2.1. Chuyển mạch kênh (Circuit Swiched Network) Thông tin truyền qua một kênh vật lý cố định, tốc độ và độ tin cậy cao nhng lãng phí đờng truyền do không sử dụng hết. .II.2.2. Chuyển mạch tin báo (Message Swiched Network) Liên lạc đợc thiết lập khi có thông tin cần truyền, thông tin đợc định dạng gồm header và data và có độ dài không cố định: Mối liên lạc đợc thiết lập và chỉ giải phóng khi truyền xong dữ liệu do đó không quản lý đợc thời gian chiếm đờng truyền .II.2.3. Chuyển mạch gói (Packed Swiched Network) Thông tin đợc cắt ra thành các gói có độ dài quy định Ví dụ Erthenet IEEE 802.3 chia message thành các gói 1500 bytes. Mỗi gói đều có header và data. Các gói của các message khác nhau có thể truyền xen kẽ trên đờng truyền do đó thời gian chờ đợi chung của hệ thống giảm. .II.3. Phân loại theo phạm vi hoạt động Theo phạm vi hoạt động, ngời ta chia mạng máy tính thành những loại sau .II.3.1. Mạng LAN (Local Area Network) Thờng là mạng đợc sử dụng cho một công ty, trờng học hay trong một toà nhà, khoảng cách tơng đối nhỏ (cỡ vài trăm m tới vài Km) tốc độ truyền lớn, độ trễ nhỏ. (Phụ lục A trình bày một số mạng cục bộ thờng đợc sử dụng) .II.3.2. Mạng MAN (Metropolian Area Network) Mạng đợc cài đặt trong phạm vi một đô thị hay trung tâm kinh tế - xã hội (có bán kính khoảng 100 Km) 7 Ngo duc tho duong minh chau .II.3.3. Mạng WAN (Wide Area Network) Mạng diện rộng có thể bao trùm một vùng rộng lớn cỡ quốc gia hay lục địa. .II.3.4. Liên mạng (internet) Phần lớn các mạng cục bộ đều độc lập với nhau về phần cứng cũng nh phần mềm, chúng đợc thiết lập nhằm mục đích phục vụ những nhóm ngời cụ thể nào đó. Trong mỗi mạng đó, ngời dùng tự lựa chọn một công nghệ phần cứng phù hợp với công việc của họ. Một điều quan trọng nữa là không thể xây dựng một mạng chung dựa trên một công nghệ sử dụng trên một mạng đơn lẻ nào đó bởi vì không có công nghệ mạng nào có thể thoả mãn nhu cầu cho tất cả mọi ngời. Một số ngời có nhu cầu sử dụng đờng nối cao tốc để truyền dữ liệu của mình trong khi các mạng LAN không thể mở rộng phạm vi hoạt động quá xa. Một số mạng tốc độ chậm lại có thể kết nối máy tính tới hàng ngàn dặm Liên mạng máy tính (internetworking hay internet) là một công nghệ đợc đa ra nhằm kết nối các mạng thành một thể thống nhất. Công nghệ internet che dấu đi kiến trúc vật lý của mạng và cho phép máy tính truyền thông một cách độc lập với liên kết vật lý của mạng. Một liên mạng đã khá quen thuộc với chúng ta là mạng Internet Giới thiệu mạng Internet Internet là một tổ hợp hàng triệu máy đợc kết nối với nhau thông qua các thiết bị ghép nối thờng gọi là gateway để có thể chia sẻ thông tin với nhau, trong đó có đủ loại máy tính, và chúng sử dụng nhiều hệ điều hành khác nhau. Thông tin trên Internet gồm đủ loại từ th điệu tử, các file đồ hoạ đến video và còn nhiều thứ khác đợc cung cấp bởi những ngời sử dụng Internet bằng nhiều phơng thức, với nhiều t tởng khác nhau. Quy mô của Internet Có bao nhiêu máy đợc kết nối vào Internet? Con số cụ thể luôn luôn thay đổi, những địa chỉ mới luôn luôn đợc cập nhật từng giây chúng ta có thể truy nhập địa chỉ Web site của tổ chức Network Wizards http://www.nw.com/zone/WWW/top.html 8 Ngo duc tho duong minh chau để biết những số liệu mới nhất Thời gian Số lợng máy Tháng 1 năm 1996 14,252,000 Tháng 1 năm 1997 21,819,000 Tháng 1 năm 1998 29,670,000 Những máy chủ (host) mạnh thờng sử dụng những hệ điều hành đa nhiệm, ví dụ nh UNIX, để ngời sử dụng kết nối vào, nh thế có nghĩa là số máy của ngời sử dụng mạng nhiều hơn những con số trên. Những máy chủ đợc định vị tại các điểm nh th viện, các trờng đại học, các tổ chức chính phủ, các đại lý, các công ty, các trờng trung học, tiểu học trên toàn thế giới. Những máy chủ này đợc kết nối với nhau qua đờng điện thoại và chỉ mất khoảng 640/1000 giây để bắt đầu nhận thông báo từ Bắc Mỹ tới Nam cực. Các dịch vụ mà Internet cung cấp Phần lớn ngời sử dụng Internet không cần biết đến của công nghệ sử dụng trên Internet, đối với họ Internet chỉ đơn giản là một bộ chơng trình phần mềm mang lại cho họ những khả năng truyền thông có ích. Chính điều này mang lại cho Internet số ngời dùng đông đảo tới nh vậy. Các dịch vụ mức ứng dụng ban đầu trên Internet Th điện tử (Electronic mail) Cho phép ngời dùng ngồi trớc máy tính tại nhà mình gửi E-mail tới bất cứ ai ở đâu trên thế giới nếu họ có địa chỉ E- mail. Họ có thể tham gia các nhóm thảo luận (discussion group) về những đề tài khác nhau hay bắt đầu một nhóm mới về những chủ đề mà họ a thích. Truyền file (File Transfer) Nếu cần một chơng trình phần mềm mới nh các tiện ích nén file, các chơng trình diệt virus, một phần mềm trò chơi, hình ảnh hay âm thanh, ngời dùng có thể tải xuống bất cứ lúc nào với File Transfer. 9 Ngo duc tho duong minh chau Truy nhập từ xa (Remote login) Có lẽ điều thú vị nhất trong các ứng dụng của Internet là Remote login, nó cho phép ngời dùng kết nối vào một máy tính ở xa nh một trạm cuối để sử dụng máy tính đó. Dịch vụ mức mạng của Internet Một lập trình viên viết chơng trình ứng dụng trên Internet cần có một cái nhìn khác với ngời chỉ đơn giản sử dụng dịch vụ Internet. ở tầng mạng, Internet cung cấp 2 kiểu dịch vụ mà các ứng dụng của Internet thờng dùng đó là Dịch vụ truyền không kết nối (Connectionless Paket Delivery Service) là một phơng thức truyền dữ liệu mà các mạng chuyển mạch gói cung cấp. Điều này chỉ đơn giản là mạng Internet chuyển các gói tin từ máy này sang máy khác dựa vào thông tin địa chỉ của gói đến đích của nó. Việc chia nhỏ gói tin truyền này có một lợi điểm là nếu một đờng đi bị bận hoặc bị đứt, thì các gói có thể đợc truyền theo một đờng khác. Dịch vụ truyền tin cậy (Reliable Stream Transport Service) Phần lớn các ứng dụng đòi hỏi nhiều dịch vụ hơn chỉ truyền thông không kết nối bởi vì chúng cần tự động sửa lỗi, kiểm tra tính toàn vẹn của thông tin truyền đi trên mạng. Reliable Stream Transport Service giải quyết vấn đề này cho ta. 10 [...]... Chứa checksum của thông báo Type Field ICMP Message Type 0 Echo Reply 3 Destination Unreachable 4 Source Quench 5 Redirect (Change a router) 8 Echo Request 11 Time Exceeded for a Datagram 12 Parameter Problem on a Datagram 13 Timestamp Request 14 Timestamp Reply 15 Information Request 16 Information Reply 36 ... ARPANET ra thành 2 phần: ARPANET sử dụng cho nghiên cứu khoa học và MILNET sử dụng cho quân đội Đầu những năm 1980, một bộ giao thức mới đợc đa ra làm giao thức chuẩn cho mạng ARPANET và các mạng của DoD mang tên DARPA Internet protocol suit, thờng đợc gọi là bộ giao thức TCP/IP hay còn gọi tắt là TCP/IP Năm 1987 tổ chức nghiên cứu quốc gia Hoa Kỳ (National Science Foundation - NSF) tài trợ cho việc kết... mỗi một địa chỉ lớp A (do sử dụng 3 bytes để đánh địa chỉ máy) Địa chỉ lớp A thờng đợc cấp cho những tổ chức có số lợng máy tính lớn Nguyên nhân chỉ có 126 networks trong khi dùng 8 bit vì bit đầu tiên mang giá trị 0 dùng để định nghĩa lớp A vậy con lại 7 bit đánh số từ 0-127 tuy nhiên ngời ta không sử dụng một địa chỉ chứa toàn các con số 1 hoặc 0 do vậy, chỉ còn lại 126 mạng lớp A đợc sử dụng Do vậy... 7 8 : Nút đợc gán Host ID là 6 7 8, nằm trong mạng lớp A có địa chỉ là 9 0 0 0 25 Ngo duc tho duong minh chau I.2.2 .I Địa chỉ lớp B Một địa chỉ lớp B đợc nhận ra bởi 2 bit đầu tiên của byte thứ nhất mang giá trị 10 Lớp B sử dụng 2 byte đầu tiên của 4 byte để đánh địa chỉ mạng và 2 byte cuối đánh địa chỉ máy trong mạng Có 64*256 - 2 = 16.128 địa chỉ mạng lớp B với 65.534 máy cho mỗi một địa chỉ lớp... Nút đợc gán Host ID là 2 1, nằm trong mạng lớp B có địa chỉ là 190 2 0 0 I.2.3 .I Địa chỉ lớp C Một số tổ chức có quy mô nhỏ có thể xin cấp phát địa chỉ lớp C Một địa chỉ lớp C đợc nhận ra với 3 bit đầu mang giá trị 110 Mạng lớp C sử dụng 3 byte đầu để đánh địa chỉ mạng và 1 byte cuối đánh địa chỉ máy trong mạng Có 2.097.150 địa chỉ lớp C, mỗi địa chỉ lớp C có 254 máy Địa chỉ lớp C có dạng: ... kỹ thuật chọn đờng và thuật toán dẫn đờng sử dụng đối với tầng này sau đây 29 Ngo duc tho duong minh chau V.1 Gói tin IP I 0 Vers 31 Hlen Service type Total length Identification Flag Fragment offset Time to live Protocol Header cheksum Source IP address Destination IP address IP options Padding IP datagram data (Max 65535 bytes) Destination Source Type Address Address IP data CRC field Gói thông tin... của datagram là 1518 bytes) Do vậy khi size của datagram vợt quá kích thớc cho phép, nó sẽ bị chia nhỏ ra và các trờng này sẽ đảm bảo rằng các datagram đã bị phân chia này là từ một datagram ban đầu Time to live: Dùng để xác định xem datagram này có bị truyền lặp lại hay không (thông thờng nó đợc gán là 1, nếu bị lặp lại nó sẽ bị gán là 0) 30 Ngo duc tho duong minh chau Protocol: Trờng này cho biết... nằm ở các mạng khác nhau IPX sử dụng địa chỉ 12 byte Tầng giao vận: Giao thức NCP (Network Core Protocol) cung cấp nhiều dịch vụ khác ngoài việc vận chuyển dữ liệu của ngời sử dụng, nó chính là trái tim của Novell Netware Giao thức thứ hai của tầng này là SPX (Sequenced Packet eXchange) Nó chỉ thực hiện việc vận chuyển Các ứng dụng có thể lựa chọn sử dụng một trong các giao thức của tầng này ví dụ . đối với họ Internet chỉ đơn giản là một bộ chơng trình phần mềm mang lại cho họ những khả năng truyền thông có ích. Chính điều này mang lại cho Internet số ngời dùng đông đảo tới nh vậy. Các dịch. khả năng trao đổi thông tin. Sự kết nối có thể thông qua dây dẫn, tia laser, sóng điện từ hay vệ tinh viễn thông Việc kết nối các máy tính có những u điểm sau Sử dụng chung tài nguyên (resource. cung cấp nhiều dịch vụ khác ngoài việc vận chuyển dữ liệu của ngời sử dụng, nó chính là trái tim của Novell Netware. Giao thức thứ hai của tầng này là SPX (Sequenced Packet eXchange). Nó