IP là một giao thức kiểu “không liên kết” IP là một giao thức liên mạng.
Giao thức điều khiển TCP. TCP là một kiểu giao thức “có liên kết” nghĩa là cần thiết lập liên kết (lôgic) giữa các cặp thực thể TCP trước khi chúng trao đổi dữ liệu với nhau.
Giao thức UDP : là giao thức “không liên kết” được sử dụng thay thế cho TCP. Khác với TCP, UDP không có chức năng thiết lập và giải phóng liên kết, tương tự như IP.
23 trang |
Chia sẻ: vietpd | Lượt xem: 1804 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu netbios trên tcp/ip và ứng dụng giao diện netbios truyền thông báo qua mạng ngang hàng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐẠI HỌC THỦY SẢN TÌM HIỂU NETBIOS TRÊN TCP/IP VÀ ỨNG DỤNG GIAO DIỆN NETBIOS TRUYỀN THÔNG BÁO QUA MẠNG NGANG HÀNG Sinh viên thực hiện : Phan Mai Bạch Giáo viên hướng dẫn : GSTS Nguyễn Thúc Hải ĐỀ TÀI : CẤU TRÚC ĐỀ TÀI PHẦN I : Đặt vấn đề Ngữ cảnh xuất hiện đề tài Mục tiêu chính của đề tài Phần II : Tìm hiểu NetBIOS trên TCP/IP Giới thiệu TCP/IP NetBIOS trên TCP/IP Phần III : Thiết kế chương trình Nguyên tắc làm việc NetBIOS Khối điều khiển lệnh Các kiểu truyền thông được hổ trợ Phần IV : Cài đặt chương trình Sơ đồ thuật toán Các hàm NetBIOS được sử dụng Kết quả thử nghiệm Phần V : Kết luận. Phần I : Mục tiêu của đề tài Nghiên cứu xây dựng chương trình để hỗ trợ cho người sử dụng để truyền những thông báo ngắn qua mạng LAN. Với các thông báo dài ngắn khác nhau. Khi không muốn tiếp tục nữa gọi lệnh Detete để xóa tên ra khỏi bảng tên, Nếu không xóa hẳn gọi lại Hangup để chấm dứt session khi nào cần kết nói lại. Phần II : Tìm hiểu NetBIOS trên TCP/IP Giới thiệu TCP/IP. TCP/IP được tích hợp vào môi trường điều hành Unix và được sử dụng chuẩn Ethernet để kết nối với trạm làm việc với nhau. Và cứ thế TCP/IP ngày càng được sử dụng nhiều trong cả các mạng diện rộng lẫn mạng cục bộ. Bộ giao thức TCP/IP : Là một chuẩn công nghiệp của các giao thức được thiết kế để kết nối các mạng lớn với nhau mở rộng thành mạng diện rộng(WAN). Tiếp theo So sánh các kiến trúc ISO và TCP/IP IP là một giao thức kiểu “không liên kết” IP là một giao thức liên mạng. Giao thức điều khiển TCP. TCP là một kiểu giao thức “có liên kết” nghĩa là cần thiết lập liên kết (lôgic) giữa các cặp thực thể TCP trước khi chúng trao đổi dữ liệu với nhau. Giao thức UDP : là giao thức “không liên kết” được sử dụng thay thế cho TCP. Khác với TCP, UDP không có chức năng thiết lập và giải phóng liên kết, tương tự như IP. Tiếp theo NetBIOS trên TCP/IP Trong Windows 2000. NetBT sử dụng các cổng TCP và UDP như sau: Cổng UDP có địa chỉ 137 (các phục vụ tên) Cổng UDP có địa chỉ 138 (các dịch vụ Datagram) Cổng TCP có địa chỉ 139 (các dịch vụ sesion) NetBIOS trên TCP/IP cung cấp lập trình giao diện trên giao thức TCP/IP, sự mở rộng lập trình NetBIOS đến client và server tới các địa chỉ IP liên mạng và cung cấp khả năng liên vận hành với các hệ điều hành khác nhau. Tiếp theo Trong mô hình ISO NetBT nằm ở tầng Session của dịch vụ mạng. Các NetBIOS Session được thiết lập giữa hai tên Một cổng TCP đã được thiết lập giao tiếp từ trạm làm việc đến một máy phục vụ sử dụng địa chỉ cổng TCP là 139. Một trạm làm việc gởi lời yêu cầu NetBIOS Session đến tên máy phục vụ kết nối trên TCP Tiếp theo Nếu một tầng phiên của NetBIOS được thành lập, khi đó máy khách và máy chủ trao đổi chia sẽ các file được kết nối với giao thức phục vụ Message Block NetBIOS là một chuẩn lập trình ứng dụng giao diện (API). NetBIOS định nghĩa giao diện lập trình cho việc kết nối mạng nhưng không chi tiết như thế nào về các frame truyền vật lý trên mạng. Hai máy cần liên lạc với nhau phải có ít nhất một nghi thức mạng chung được cài đặt trên từng máy Phần III : Thiết kế chương trình Đa số người sử dụng dùng NetBIOS để thực hiện một lệnh nào đó được hỗ trợ bằng NetBIOS PC Network. Một lệnh được gọi là ngắt mềm 5Ch, gọi địa chỉ trực tiếp của IBM PC Adapter Card. Lệnh còn gọi là ngắt mềm 2Ah, lệnh này không phụ thuộc IBM PC Adapter Card hiện thời. Ngyên tắc làm việc NetBIOS Tiếp theo Tiếp theo Vai trò NETBIOS trong mạng LAN Tiếp theo Các kiểu truyền thông được hỗ trợ Mỗi Network name có 16 ký tự (có phân biệt chữ hoa và chữ thường). Chỉ số tên (Number of Name) cho một Adapter có thể được sử dụng với số lượng lớn. Hỗ trợ tên NETBIOS Hỗ trợ Datagram và Session Datagram là một thông báo ngắn có kích thước thay đổi tùy theo NetBIOS. Một Datagram có thể không bao giờ được nhận bởi bất kỳ một Workstation nào. NetBIOS Session support tạo sự kết nối để truyền dữ liệu hai chiều giữa hai ứng dụng trong một thời gian dài. Khởi tạo Sesion : Các Session được tạo khi một ứng dụng phát hiện NetBIOS Listen tham chiếu đến một tên trong NetBIOS name table. Trình ứng dụng thứ hai phát hiện NetBIOS Call với tên tham chiếu là tên mà ứng dụng thứ nhất đang đợi. Chấm dứt Session : Session được chấm dứt bởi một hay cả hai bên phát lệnh NetBIOS Hang Up Khối điều khiển lệnh Typedef struct{ byte NCB_COMMAND; byte NCB_RETCODE; byte NCB_LSN; byte NCB_NUM; void far *NCB_BUFFER_PTR; word NCB_LENGTH; byte NCB_CALLNAME[16]; byte NCB_NAME[16]; byte NCB_RTO; byte NCB_STO; voidinterrupt(*POST_FUNC)(void); byte NCB_LANA_NUM; byte NCB_CMD_CPLT; byte NCB_RECEIVE[14]; } NCB; Tiếp theo Lệnh của NetBIOS được thực hiện : Khi một ứng dụng phát một lệnh đến NetBIOS, NetBIOS sẽ cung cấp một mã trả về cho yêu cầu của ứng dụng. Thành phần này phụ thuộc vào lệnh đặc tả lựa chọn wait hay no_wait Nếu lệnh đặc tả chọn wait, quyền điều khiển không trả về ứng dụng cho đến khi Adapter hoàn thành lệnh. Nếu lựa chọn no_wait, NetBIOS đưa ra từ mã trả về. Phần IV : Cài đặt và thử nghiệm Để thực hiện truyền một thông báo qua Session support của NetBIOS, đầu tiên ta cần thiết lập một Session với tên cho trước vào hệ thống. Nếu hệ thống không chấp thuận việc đưa tên này thì chương trình kết thúc và việc truyền, nhận không thực hiện được Nếu hệ thống chấp thuận thì ta tiếp tục phát lệnh Listen và lệnh Call để khởi tạo Session Start Add Name Workstation Thành cơng Thiết lập Session Thành cơng Truyền và nhận Message True Tiếp tục Phát lệnh Hangup để kết thúc Session Phát lệnh Delete name để xố tên ra khỏi bảng tên End True Yes No False False Thuật tốn chính của chương trình Các hàm NetBIOS được sử dụng : cộng tên, xóa tên, gọi, lắng nghe, nhận gởi, dừng kết nối…… Các kết quả thử nghiệm Chương trình đã hoạt động trong mạng LAN. Giúp người sử dụng để truyền nhận thơng báo qua mạng ngang hàng một cách dễ dàng và thơng tin đến đích nguyên vẹn. Chỉ cần hai máy cài đặt mạng LAN chương trình hoạt động. Phần V : Kết luận Tuy có nhiều cố gắng trong việc tìm hiểu giao thức TCP/IP nhưng còn nhiều hạn chế chỉ xung quanh vấn đề của đề tài. NetBIOS trên TCP/IP dịch nhiều thuật ngữ còn nhiều điều chưa rõ. Phân tích và cài đặt tuy chương trình hoạt động nhưng còn nhiều hàm chưa được sử dụng trong chương trình. Hướng phát triển đề tài : Cài đặt tất cả các hàm NetBIOS, khi một session nào xóa thì các session khác truyền được, truyền được trên mọi giao thức, giao diện thân thiện hơn đối với người dùng,truyền được nhiều thông báo dài hơn. Lời kết * Tơi xin chân thành cám ơn đến : - Thầy Nguyễn Thúc Hải đã tận tình giúp tơi trong suốt quá trình thực tập tốt nghiêp. - Cùng tồn thể quí thầy cơ trong khoa Cơng nghệ Thơng tin Trường Đại học Bách Khoa Hà Nội. - Cùng tồn thể quí thầy cơ trong khoa Cơng nghệ Thơng tin Trường Đại học Thủy Sản Nha Trang. - Cùng tồn thể các bạn trong lớp 40TH.