lap trinh truyen thong 9648

7 4 0
lap trinh truyen thong 9648

Đang tải... (xem toàn văn)

Thông tin tài liệu

Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng CHƯƠNG Tổng quan lập trình truyền thơng Mục đích Chương nhằm cung cấp cho bạn nhìn tổng quan vấn đề có liên quan lập trình truyền thơng u cầu Sau hồn tất chương này, bạn có thể: ƒ Giải thích Cơ chế giao tiếp liên trình (Inter-Process Communication ) ƒ Mô tả chức năng, nhiệm vụ tầng mơ hình OSI ƒ Định nghĩa giao thức biện luận cần thiết giao thức truyền thông ƒ Mô tả giao thức TCP/IP ƒ Định nghĩa mơ hình Client – Server ƒ Phân biệt chế độ giao tiếp: Nghẽn Không nghẽn ƒ Phân biệt kiểu kiến trúc chương trình Biên Soạn: Ngơ Bá Hùng - Nguyễn Công Huy Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng 1.1 Cơ chế giao tiếp liên trình ? Truyền thông khái niệm dùng để giao tiếp, trao đổi thông tin hai hay nhiều thực thể hệ thống Nếu hệ thống mà xem xét xã hội lồi người, truyền thơng q trình trao đổi thông tin người với người sống thông qua phương tiện truyền tải thông tin khác khơng khí (trong trị chuyện trực tiếp), hệ thống điện thoại, sách, báo, phương tiện nghe nhìn, mạng máy tính Nếu hệ thống mà xem xét hệ thống máy tính hay hệ thống mạng truyền thơng phân thành hai mức: ƒ Mức phần cứng: giao tiếp, trao đổi thông tin phận vật lý cấu thành nên hệ thống máy tính CPU, nhớ, thiết bị vào ra, card giao tiếp mạng, nhờ vào phương tiện truyền thông hệ thống BUS nội, hệ thống BUS vào hay dây cáp mạng ƒ Mức phần mềm: giao tiếp, trao đổi thông tin thành phần bên chương trình hay chương trình với thơng qua chế truyền thông hỗ trợ hệ điều hành, hệ điều hành mạng Trong hệ thống máy tính đơn nhiệm (monotasking) cổ điển, ví dụ MS-DOS, thời điểm cho phép tồn trình Việc giao tiếp, trao đổi thông tin diễn phạm vi chương trình Đó giao tiếp thủ tục hình thức chia sẻ biến toàn cục, hay cách truyền tham số gọi hàm, thủ tục hay giá trị trả hàm Ngược lại, hệ thống đa nhiệm (multitasking) có nhiều trình tồn song song nhau, trình thực không gian địa (Address space) riêng biệt Việc giao tiếp trình muốn thực địi hỏi phải có tiện ích hỗ trợ hệ điều hành, hệ điều hành mạng Các tiện ích thường gọi với tên Cơ chế giao tiếp liên trình (IPC - Inter-Process Communication) 1.2 Phân loại chế giao tiếp liên trình Các chế giao tiếp liên trình hỗ trợ hệ điều hành đa nhiệm, hệ điều hành mạng chia làm hai loại: ƒ Loại 1: Cơ chế giao tiếp liên trình hỗ trợ giao tiếp trình máy tính (Hình H1.1) Hình 1.1 - Cơ chế giao tiếp liên trình loại Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng • Loại 2: Cơ chế giao tiếp liên trình hỗ trợ giao tiếp q trình nằm máy tính khác (Hình H1.2) Hình 1.2 - Cơ chế giao tiếp liên trình loại Trong chế giao tiếp liên trình máy, liệu trao đổi qua lại trình phải xuyên qua hạt nhân (kernel) hệ điều hành Đó vùng nhớ dùng chung cho trình qui định trước hệ điều hành, hay tập tin đĩa quản lý hệ điều hành q trình ghi liệu vào, trình khác đọc liệu ra, Trong chế giao tiếp liên trình máy tính khác nhau, liệu trao đổi q trình khơng phải qua hạt nhân chế giao tiếp liên trình máy tính mà hạt nhân máy có liên quan phải hiểu Nói cách khác hạt nhân phải thoả thuận trước với qui tắc trao đổi thông tin chúng Thông thường ta gọi qui tắc giao thức (Protocol) 1.3 Mơ hình tham khảo OSI Để dễ dàng cho việc nối kết trao đổi thông tin máy tính với nhau, vào năm 1983, Tổ chức tiêu chuẩn giới ISO phát triển mơ hình cho phép hai máy tính gởi nhận liệu cho Mơ hình dựa tiếp cận phân tầng (lớp), với tầng đảm nhiệm số chức gọi mơ hình OSI Để hai máy tính trao đổi thơng tin với cần có nhiều vấn đề liên quan Ví dụ cần có Card mạng, dây cáp mạng, điện tín hiệu cáp mạng, cách thức đóng gói liệu, điều khiển lỗi đường truyền Bằng cách phân chia chức vào tầng riêng biệt nhau, việc viết phần mềm để thực chúng trở nên dễ dàng Mơ hình OSI giúp đồng hệ thống máy tính khác biệt chúng trao đổi thơng tin Mơ hình gồm có tầng: Tầng ứng dụng (Application Layer) Đây tầng cùng, cung cấp ứng dụng truy xuất đến dịch vụ mạng Nó bao gồm ứng dụng người dùng, ví dụ Web Browser (Netscape Navigator, Internet Explorer ), Mail User Agent (Outlook Express, Netscape Messenger, ) hay chương trình làm server cung cấp dịch vụ mạng Web Server (Netscape Enterprise, Internet Information Service, Apache, ), Các FTP Server, Mail server (Send mail, MDeamon) Người dùng mạng giao tiếp trực tiếp với tầng Tầng trình bày (Presentation Layer) Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng Tầng đảm bảo máy tính có kiểu định dạng liệu khác trao đổi thơng tin cho Thơng thường máy tính thống với kiểu định dạng liệu trung gian để trao đổi thông tin máy tính Một liệu cần gởi tầng trình bày chuyển sang định dạng trung gian trước truyền lên mạng Ngược lại, nhận liệu từ mạng, tầng trình bày chuyển liệu sang định dạng riêng Tầng giao dịch (Session Layer) Tầng cho phép ứng dụng thiết lập, sử dụng xóa kênh giao tiếp chúng (được gọi giao dịch) Nó cung cấp chế cho việc nhận biết tên chức bảo mật thông tin truyền qua mạng Tầng vận chuyển (Transport Layer) Tầng đảm bảo truyền tải liệu trình Dữ liệu gởi đảm bảo khơng có lỗi, theo trình tự, khơng bị mát, trùng lắp Đối với gói tin có kích thước lớn, tầng phân chia chúng thành phần nhỏ trước gởi đi, tập hợp lại chúng nhận Tầng mạng (Network Layer) Tầng đảm bảo gói liệu (Packet) truyền từ máy tính đến máy tính cho dù khơng có đường truyền vật lý trực tiếp chúng Nó nhận nhiệm vụ tìm đường cho liệu đến đích khác hệ thống mạng Tầng liên kết liệu (Data-Link Layer) Tầng đảm bảo truyền tải khung liệu (Frame) hai máy tính có đường truyền vật lý nối trực tiếp với Nó cài đặt chế phát xử lý lỗi liệu nhận Tầng vật ký (Physical Layer) Điều khiển việc truyền tải thật bit đường truyền vật lý Nó định nghĩa tín hiệu điện, trạng thái đường truyền, phương pháp mã hóa liệu, loại đầu nối sử dụng Về nguyên tắc, tầng n hệ thống giao tiếp, trao đổi thông tin với tầng n hệ thống khác Mỗi tầng có đơn vị truyền liệu riêng: • • • • Tầng vật lý: bit Tầng liên kết liệu: Frame Tầng mạng: Packet Tầng vận chuyển: Segment Trong thực tế, liệu gởi từ tầng xuống tầng tầng thấp máy tính gởi Ở đó, liệu truyền đường truyền vật lý Mỗi Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng liệu truyền xuống tầng phía bị "gói" lại đơn vị liệu tầng Tại bên nhận, liệu truyền ngược lên tầng cao dần Mỗi lần qua tầng, đơn vị liệu tương ứng “tháo” Đơn vị liệu tầng có tiêu đề (header) riêng, mơ tả hình 1.3 OSI mơ hình tham khảo, nhà sản xuất phát minh hệ thống mạng thực chức tầng theo cách thức riêng Các cách thức thường mô tả dạng chuẩn mạng hay giao thức mạng Như dẫn đến trường hợp chức hai hệ thống mạng khác không tương tác với Hình 1.4 so sánh kiến trúc hệ điều hành mạng thông dụng với mô hình OSI Hình 1.3 - Xử lý liệu qua tầng Hình 1.4 - Kiến trúc số hệ điều hành mạng thông dụng Để thực chức tầng tầng mô hình OSI, hệ thống mạng có protocol riêng: ƒ UNIX: Tầng dùng giao thức IP, tầng giao thức TCP/UDP ƒ Netware: Tầng dùng giao thức IPX, tầng giao thức SPX ƒ Windows NT: dùng giao thức NETBEUI Nếu dừng lại máy tính UNIX, Netware, NT không trao đổi thông tin với Với lớn mạnh mạng Internet, máy tính cài đặt hệ điều hành khác đòi hỏi phải giao tiếp với nhau, tức phải sử dụng chung giao thức Đó giao thức TCP/IP, giao thức mạng Internet Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thông 1.7.1.2 Tiếp cận luồng mức hạt nhân hệ điều hành .44 1.7.2 Luồng java 44 1.7.2.1 Độ ưu tiên luồng .47 1.7.3 Đồng hóa luồng 49 1.8 Bài tập áp dụng 49 Chủ đề 1: Cơ Java 49 Chủ đề 2: Thiết kế lớp Java 49 Chủ đề 3: Thread .50 CHƯƠNG 51 Ống dẫn (Pipe) 51 1.1 Giới thiệu ống dẫn 52 1.2 Ống dẫn Java .52 1.2.1 Giới thiệu .52 1.2.2 Các cách tạo ống dẫn 53 1.3 Dịch vụ phản hồi thông tin (Echo Service) 53 1.4 Giả lập dịch vụ phản hồi thông tin Pipe 54 1.4.1 Lớp PipedEchoServer 54 1.4.2 Lớp PipedEchoClient 55 1.4.3 Lớp PipedEcho 55 1.4.5 Biên dịch thực thi chương trình 56 CHƯƠNG 57 Socket 57 1.1 Giới thiệu socket 58 1.1.1 Giới thiệu .58 1.1.2 Số hiệu cổng (Port Number) socket 58 1.1.3 Các chế độ giao tiếp 60 1.2 Xây dựng ứng dụng Client-Server với Socket .61 1.2.1 Mơ hình Client-Server sử dụng Socket chế độ có nối kết (TCP) 61 1.2.2 Mơ hình Client-Server sử dụng Socket chế độ không nối kết (UDP) 63 1.3 Socket ngôn ngữ Java 64 1.3.1 Xây dựng chương trình Client chế độ có nối kết .65 1.3.1.1 Lớp java.net.Socket 65 1.3.1.2 Chương trình TCPEchoClient 66 1.3.2 Xây dựng chương trình Server chế độ có nối kết 67 Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy 95 Khoa Công Nghệ Thông Tin - Đại Học Cần Thơ - Giáo Trình Lập Trình Truyền Thơng 1.3.2.1 Lớp java.net.ServerSocket .67 1.3.2.2 Xây dựng chương trình Server phục vụ .67 1.3.2.3 Chương trình STCPEchoServer .68 1.3.2.4 Server phục vụ song song .69 1.3.2.5 Chương trình PTCPEchoServer .70 1.3.3 Xây dựng chương trình Client - Server chế độ không nối kết 71 1.3.3.1 Lớp DatagramPacket 72 1.3.3.2 Lớp DatagramSocket 73 1.3.3.3 Chương trình UDPEchoServer .74 1.3.3.4 Chương trình UDPEchoClient .75 1.4 Bài tập áp dụng 77 CHƯƠNG 79 RPC RMI .79 1.1 Lời gọi thủ tục xa (RPC- Remote Procedure Call) 80 1.1.1 Giới thiệu .80 1.1.2 Kiến trúc chương trình Client-Server cài đặt theo chế lời gọi thủ tục xa 80 Hình 5.1 Kiến trúc chương trình kiểu RPC 80 1.2 Kích hoạt phương thức xa (RMI- Remote Method Invocation ) 81 1.2.1 Giới thiệu .81 1.2.2 Kiến trúc chương trình Client-Server theo chế RMI 82 1.2.3 Các chế liên quan ứng dụng đối tượng phân tán .83 1.2.4 Cơ chế vận hành của ứng dụng Client-Server theo kiểu RMI 84 1.2.5 Các lớp hỗ trợ chương trình theo kiểu Client-Server Java 85 1.3 Xây dựng ứng dụng phân tán với RMI 85 1.3.1 Thiết kế cài đặt thành phần ứng dụng 85 1.3.2 Biên dịch tập tin nguồn tạo Stubs Skeleton 85 1.3.3 Tạo lớp truy xuất từ mạng 86 1.3.4 Thực thi ứng dụng 86 1.3.4 Ví dụ minh họa 86 1.4 Bài tập áp dụng 92 Mục lục .92 Biên Soạn: Ngô Bá Hùng - Nguyễn Công Huy 96

Ngày đăng: 02/12/2022, 22:49

Hình ảnh liên quan

Hình 1.1 - Cơ chế giao tiếp liên quá trình loại 1 - lap trinh truyen thong 9648

Hình 1.1.

Cơ chế giao tiếp liên quá trình loại 1 Xem tại trang 2 của tài liệu.
Hình 1.2 - Cơ chế giao tiếp liên quá trình loại 2 - lap trinh truyen thong 9648

Hình 1.2.

Cơ chế giao tiếp liên quá trình loại 2 Xem tại trang 3 của tài liệu.
Hình 1.3 - Xử lý dữ liệu qua các tầngOSI chỉ là mơ hình tham khảo, mỗi  - lap trinh truyen thong 9648

Hình 1.3.

Xử lý dữ liệu qua các tầngOSI chỉ là mơ hình tham khảo, mỗi Xem tại trang 5 của tài liệu.
hình 1.3. - lap trinh truyen thong 9648

hình 1.3..

Xem tại trang 5 của tài liệu.

Tài liệu cùng người dùng

Tài liệu liên quan