Sử dụng kỹ thuật lập trình socket xây dựng chương trình chat qua mạng lan

30 3K 20
Sử dụng kỹ thuật lập trình socket xây dựng chương trình chat qua mạng lan

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Sử dụng kỹ thuật lập trình socket xây dựng chương trình chat qua mạng lan

TRƯỜNG CĐ CNTT HỮU NGHỊ VIỆT HÀN KHOA KHOA HỌC MÁY TÍNH  BÁO CÁO ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG NÂNG CAO Đề tài : Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng lan Giáo viên: Nguyễn Vũ Lớp : MM03A – Nhóm 5 Sinh viên thực hiện : - Lê Long Bảo - Trần Ngọc Khải - Phạm Thị Thảo Đà Nẵng, tháng 2 năm 2012 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan LỜI MỞ ĐẦU Trong thời đại công nghệ ngày nay, việc ứng dụng công nghệ thông tin sẽ giúp công việc giải quyết một cách suôn sẻ và trôi chảy hơn. Việc trao đổi thông tin giữa các người dùng với nhau, hoặc người dùng muốn chia sẽ, trò chuyện với nhau là một nhu cầu cấp thiết. Với nhu cầu đó, nhóm chúng em đã chọn đề tài “Sử dụng kỹ thuật lập trình Socket để xây dựng chương trình Chat qua mạng Lan”, bằng việc ứng dụng những gì đã học trong môn Lập trình mạng nâng cao là một trong những môn giúp người lập trình phát triển các ứng dụng cho doanh nghiệp, cũng như giúp các máy tính có thể trao đổi, truyền tin nhắn hoặc thông điệp với nhau. Đồ án gồm ba chương: Chương 1: Tổng quan về lập trình mạng. Chương 2: Tổng quan về lập trình Socket. Chương 3: Xây dựng và thiết kế chương trình. Kết luận và tài liệu tham khảo. Mặc dù có tìm hiểu kỹ, và kiểm tra chương trình chạy thành công, nhưng chắc chắn vẫn không tránh khỏi sai sót nhất định. Rất mong nhận được sự góp ý và phê bình từ thầy cô cũng như các bạn. Để hoàn thành đồ án này, nhóm chúng em xin cảm ơn thầy Nguyễn Vũ đã tận tình hướng dẫn nhóm chúng em trong thời gian qua. Xin chân thành cảm ơn. Đà nẵng, tháng 3 năm 2012 Nhóm 5 - MM03A Nhóm 1 – MM03A 2 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan MỤC LỤC DANH MỤC HIỆU VÀ TỪ VIẾT TẮT Ký hiệu Ý nghĩa PAN Personal Area Network LAN Local Area Network MAN Metropolitan Area Network WAN Wire Area Network Nhóm 1 – MM03A 3 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan DANH MỤC HÌNH VẼ Nhóm 1 – MM03A 4 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan CHƯƠNG 1: TỔNG QUAN VỀ LẬP TRÌNH MẠNG 1.1. TỔNG QUAN VỀ MẠNG MÁY TÍNH 1.1.1. Khái niệm về mạng máy tính Mạng máy tính là tập hợp các máy tính độc lập kết nối với nhau theo một chuẩn kỹ thuật nhất định. Hai máy tính gọi là nối mạng với nhau nếu chúng có khả năng trao đổi thông tin. Phương tiện kết nối có thể là cáp đồng, cáp quang, sóng viba, hồng ngoại hoặc vệ tinh. Mạng máy tính có nhiều kích cỡ, cấu trúc và hình thức tổ chức khác nhau tùy thuộc vào từng ứng dụng cụ thể của mạng máy tính. Tuy nhiên, chúng có thể phân thành hai loại chính là: mạng có cấu trúc ngang hàng và mạng có cấu trúc Client – Server (máy trạm – máy chủ) Hình 1.1. Mạng ngang hàng Hình 1.2. Mạng Client – Server Trên thực tế, không có một phương pháp phân loại thống nhất cho tất cả các loại mạng máy tính, tuy nhiên khi xét đến một mạng máy tính người ta quan tâm đến hai đặc điểm quan trọng: phương thức truyền dẫn và quy mô mạng. Có hai phương thức truyền dẫn được sử dụng phổ biến đó là: truyền quảng bá và truyền điểm-nối-điểm. Truyền quảng bá là phương thức sử dụng kênh thông tin đơn chung cho tất cả các máy trạm trên mạng. Gói dữ liệu được gửi từ một máy trạm mong muốn thì gói dữ liệu đó sẽ được xử lý, nếu không sẽ được bỏ qua. Một hệ thống mạng truyền quảng bá hỗ trợ việc truyền dữ liệu đến một tập hợp các máy trạm, thì được gọi là truyền đa điểm Đối với phương thức truyền điểm-nối-điểm, mạng máy tính sử dụng phương thức này bao gồm tập hợp nhiều kết nối giữa các máy trạm. Gói dữ liệu từ đầu phát dữ liệu đến đầu thu dữ liệu có thể sẽ đi qua một hoặc nhiều máy trạm trung gian theo nhiều tuyến truyền dẫn khác nhau với độ dài khác nhau. Nhóm 1 – MM03A 5 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Trường hợp mạng máy tính sử dụng phương thức truyền điểm-nối-điểm với một đầu phát và một đầu thu được gọi là phương thức truyền unicasting Phương thức phân loại thứ hai dựa vào quy mô mạng hay kích thước vật lý của mạng. Theo quy mô từ nhỏ đến lớn ta có các loại mạng sau: - Mạng cá nhân (Personal Are Network-PAN) - Mạng LAN (Local Area Network)-mạng cục bộ: kết nối các nút trên một phạm vi giới hạn. Phạm vi này có thể là một công ty, hay một tòa nhà. - Mạng WAN (Wide Area Network): nhiều mạng LAN kết nối với nhau tạo thành mạng WAN. - MAN (Metropolitan Area Network), tương tự như WAN, nó cũng kết nối nhiều mạng LAN. Tuy nhiên, một mạng MAN có phạm vi là một thành phố hay một đô thị nhỏ. MAN sử dụng các mạng tốc độ cao để kết nối các mạng LAN của trường học, chính phủ, công ty, , bằng cách sử dụng các liên kết nhanh tới từng điểm như cáp quang. 1.2. MÔ HÌNH PHÂN TẦNG 1.2.1. Mô hình OSI Hình 1.3. Mô hình OSI Mô hình OSI có 7 lớp và được thiết kế theo các nguyên tắc sau: - Một lớp được tạo ra tương ứng với một khái niệm trừu tượng - Một lớp thực hiện một chức năng hoàn chỉnh nào đó. - Chức năng của mỗi lớp phải được chọn theo xu hướng phù hợp với các giao thứcđã được chuẩn hóa - Biên của các lớp phải được thiết kế sao cho tối thiểu hóa được lượng thông tin truyền qua các giao diện - Số lượng các lớp không quá ít để đảm bảo thực hiện đủ các chức năng cần thiết và không được quá nhiều để kiến trúc của nó không trở nên cồng kềnh 1.2.1.1. Lớp vật lý Lớp vật lý bao gồm việc truyền tải các tín hiệu trong môi trường từ máy tính này đến máy tính khác. Lớp này gồm có các chi tiết kỹ thuật về các đặc tính điện và cơ như: mức điện áp, định thời tín hiệu, tốc độ dữ liệu, độ dài truyền tải lớn nhất và các kết nối vật lý của thiết bị mạng. Để một thiết bị hoạt động chỉ trong lớp vật lý, Nhóm 1 – MM03A 6 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan nó sẽ không có bất kỳ kiến thức nào về dữ liệu mà nó truyền tải. Một thiết bị lớp vật lý chỉ truyền tải hoặc nhận dữ liệu một cách đơn giản. 1.2.1.2. Lớp liên kết dữ liệu Cung cấp khả năng chuyển dữ liệu tin cậy xuyên qua một liên kết vật lý. Lớp này liên quan đến: - Địa chỉ vật lý - Mô hình mạng - Cơ chế truy cập đường truyền - Thông báo lỗi - Thứ tự phân phối frame - Điều khiển dòng. Tại lớp data link, các bít đến từ lớp vật lý được chuyển thành các frame dữ liệu bằng cách dùng một số nghi thức tại lớp này. Lớp data link được chia thành hai lớp con: - Lớp con LLC (logical link control). - Lớp con MAC (media access control) Lớp con LLC là phần trên so với các giao thức truy cập đường truyền khác, nó cung cấp sự mềm dẻo về giao tiếp. Bởi vì lớp con LLC hoạt động độc lập với các giao thức truy cập đường truyền, cho nên các giao thức lớp trên hơn (ví dụ như IP ở lớp mạng) có thể hoạt động mà không phụ thuộc vào loại phương tiện LAN. Lớp con LLC có thể lệ thuộc vào các lớp thấp hơn trong việc cung cấp truy cập đường truyền. Lớp con MAC cung cấp tính thứ tự truy cập vào môi trường LAN. Khi nhiều trạm cùng truy cập chia sẻ môi trường truyền, để định danh mỗi trạm, lớp cho MAC định nghĩa một trường địa chỉ phần cứng, gọi là địa chỉ MAC address. Địa chỉ MAC là một con số đơn nhất đối với mỗi giao tiếp LAN (card mạng). Lớp vật lý (Physical Layer): định nghĩa các qui cách về điện, cơ, thủ tục và các đặc tả chức năng để kích hoạt, duy trì và dừng một liên kết vật lý giữa các hệ thống đầu cuối. Một số các đặc điểm trong lớp vật lý này bao gồm: - Mức điện thế. - Khoảng thời gian thay đổi điện thế. - Tốc độ dữ liệu vật lý. - Khoảng đường truyền tối đa. - Các đầu nối vật lý. 1.2.1.3. Lớp mạng Lớp mạng chịu trách nhiệm lập địa chỉ các thông điệp, diễn dịch địa chỉ và tên logic thành địa chỉ vật lý đồng thời nó cũng chịu trách nhiệm gởi packet từ mạng nguồn đến mạng đích. Lớp này quyết định đường đi từ máy tính nguồn đến máy tính đích. Nó quyết định dữ liệu sẽ truyền trên đường nào dựa vào tình trạng, ưu tiên dịch vụ và các yếu tố khác. Nó cũng quản lý lưu lượng trên mạng chẳng hạn như chuyển đổi gói, định tuyến, và kiểm soát sự tắc nghẽn dữ liệu.Dữ liệu ở lớp này gọi packet hoặc datagram. 1.2.1.4. Lớp vận chuyển Lớp vận chuyển phân đoạn dữ liệu từ hệ thống máy truyền và tái thiết lập dữ liệu vào một luồng dữ liệu tại hệ thống máy nhận đảm bảo rằng việc bàn giao các thông điệp giữa các thiết bị đáng tin cậy. Dữ liệu tại lớp này gọi là segment. Lớp này thiết lập, duy trì và kết thúc các mạch ảo đảm bảo cung cấp các dịch vụ sau: - Xếp thứ tự các phân đoạn: khi một thông điệp lớn được tách thành nhiều phân đoạn nhỏ để bàn giao, lớp vận chuyển sẽ sắp xếp thứ tự các phân đoạn trước khi ráp nối các phân đoạn thành thông điệp ban đầu. Nhóm 1 – MM03A 7 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan - Kiểm soát lỗi: khi có phân đoạn bị thất bại, sai hoặc trùng lắp, lớp vận chuyển sẽ yêu cầu truyền lại. - Kiểm soát luồng: lớp vận chuyển dùng các tín hiệu báo nhận để xác nhận. Bên gửi sẽ không truyền đi phân đoạn dữ liệu kế tiếp nếu bên nhận chưa gởi tín hiệu xác nhận rằng đã nhận được phân đoạn dữ liệu trước đó đầy đủ. 1.2.1.5. Lớp phiên Lớp này có chức năng thiết lập, quản lý, và kết thúc các phiên thông tin giữa hai thiết bị truyền nhận. Lớp phiên cung cấp các dịch vụ cho lớp trình bày. Lớp Session cung cấp sự đồng bộ hóa giữa các tác vụ người dùng bằng cách đặt những điểm kiểm tra vào luồng dữ liệu. Bằng cách này, nếu mạng không hoạt động thì chỉ có dữ liệu truyền sau điểm kiểm tra cuối cùng mới phải truyền lại. Lớp này cũng thi hành kiểm soát hội thoại giữa các quá trình giao tiếp, điều chỉnh bên nào truyền, khi nào, trong bao lâu. Ví dụ như: RPC, NFS, Lớp này kết nối theo ba cách: Haft duplex,Simplex, Full-duplex. 1.2.1.6. Lớp trình diễn Lớp này chịu trách nhiệm thương lượng và xác lập dạng thức dữ liệu được trao đổi. Nó đảm bảo thông tin mà lớp ứng dụng của một hệ thống đầu cuối gởi đi, lớp ứng dụng của hệ thống khác có thể đọc được. Lớp trình bày thông dịch giữa nhiều dạng dữ liệu khác nhau thông qua một dạng chung, đồng thời nó cũng nén và giải nén dữ liệu. 1.2.1.7. Lớp ứng dụng Lớp ứng dụng tương tác trực tiếp với người sử dụng và nó cung cấp các dịch vụ mạng cho các ứng dụng của ngời sử dụng nhưng không cung cấp dịch vụ cho các lớp khác. Lớp này thiết lập khả năng liên lạc giữa những ngời sử dụng, đồng bộ và thiết lập các quy trình xử lý lỗi và đảm bảo tính toàn vẹn của dữ liệu. 1.2.2. Mô hình TCP/IP Hình 1.4. Mô hình TCP/IP Sự ra đời của họ giao thức TCP/IP gắn liền với sự ra đời của Internet mà tiền thân là mạng ARPAnet (Advanced Research Projects Agency) do Bộ Quốc phòng Mỹ tạo ra. Đây là bộ giao thức được dùng rộng rãi nhất vì tính mở của nó. Hai giao thức được dùng chủ yếu ở đây là TCP (Transmission Control Protocol) và IP (Internet Protocol). Chúng đã nhanh chóng được đón nhận và phát triển bởi nhiều nhà nghiên cứu và các hãng công nghiệp máy tính với mục đích xây dựng và phát triển một mạng truyền thông mở rộng khắp thế giới mà ngày nay chúng ta gọi là Internet. TCP/IP có cấu trúc tương tự như mô hình OSI, tuy nhiên để đảm bảo tính tương thích giữa các mạngsự tin cậy của việc truyền thông tin trên mạng, bộ giao thức TCP/IP được chia thành 2 phần riêng biệt: giao thức IP sử dụng cho việc kết nối mạng và giao thức TCP để đảm bảo việc truyền dữ liệu một cách tin cậy. 1.2.2.1. Lớp ứng dụng Nhóm 1 – MM03A 8 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Tại mức cao nhất này, người sử dụng thực hiện các chương trình ứng dụng truy xuất đến các dịch vụ hiện hữu trên TCP/IP Internet. Một ứng dụng tương tác với một trong những protocol ở mức giao vận (transport) để gửi hoặc nhận dữ liệu. Mỗi chương trình ứng dụng chọn một kiểu giao vận mà nó cần, có thể là một dãy tuần tự từng thông điệp hoặc một chuỗi các byte liên tục. Chương trình ứng dụng sẽ gửi dữ liệu đi dưới dạng nào đó mà nó yêu cầu đến lớp giao vận. 1.2.2.2. Lớp giao vận Nhiệm vụ cơ bản của lớp giao vận là cung cấp phưng tiện liên lạc từ một chương trình ứng dụng này đến một chưng trình ứng dụng khác. Việc thông tin liên lạc đó thường được gọi là end-to-end. Mức chuyên trở có thể điều khiển luông thông tin. Nó cũng có thể cung cấp sự giao vận có độ tin cậy, bảo đảm dữ liệu đến nơi mà không có lỗi và theo đúng thứ tự. Để làm được điều đó, phần mềm protocol lớp giao vận cung cấp giao thức TCP, trong quá trình trao đổi thông tin nơi nhận sẽ gửi ngược trở lại một xác nhận (ACK) và nơi gửi sẽ truyền lại những gói dữ liệu bị mất. Tuy nhiên trong những môi trường truyền dẫn tốt như cáp quang chẳng hạn thì việc xy ra lỗi là rất nhỏ. Lớp giao vận có cung cấp một giao thức khác đó là UDP. 1.2.2.3. Lớp internet Nhiệm vụ cơ bản của lớp này là xử lý việc liên lạc của các thiết bị trên mạng. Nó nhận được một yêu cầu để gửi gói dữ liệu từ lớp cùng với một định danh của máy mà gói dữ liệu phi được gửi đến. Nó đóng segment vào trong một packet, điền vào phần đầu của packet, sau đó sử dụng các giao thức định tuyến để chuyển gói tin đến được đích của nó hoặc trạm kế tiếp. Khi đó tại nơi nhận sẽ kiểm tra tính hợp lệ của chúng, và sử dụng tiếp các giao thức định tuyến để xử lý gói tin. Đối với những packet được xác định thuộc cùng mạng cục bộ, phần mềm Internet sẽ cắt bỏ phần đầu của packet, và chọn một trong các giao thức lớp chuyên trở thích hợp để xử lý chúng. Cuối cùng, lớp Internet gửi và nhận các thông điệp kiểm soát và sử lý lỗi ICMP. 1.2.2.4. Lớp giao tiếp mạng Lớp thấp nhất của mô hình TCP/IP chính là lớp giao tiếp mạng, có trách nhiệm nhận các IP datagram và truyền chúng trên một mạng nhất định. Người ta lại chia lớp giao tiếp mạng thành 2 lớp con là: - Lớp vật lý: Lớp vật lý làm việc với các thiết bị vật lý, truyền tới dòng bit 0, 1 từ ni gửi đến nơi nhận. - Lớp liên kết dữ liệu: Tại đây dữ liệu được tổ chức thành các khung (frame). Phần đầu khung chứa địa chỉ và thông tin điều khiển, phần cuối khung dành cho viêc phát hiện lỗi. 1.3. Mô hình truyền thông trong cấu trúc mạng 1.3.1. Nguyên tắc truyền thông Để một mạng máy tính trở một môi trường truyền dữ liệu thì nó cần phải có những yếu tố sau: - Các hệ thống được liên kết với nhau theo một cấu trúc kết nối (topology) nào đó - Việc chuyển dữ liệu từ máy tính này đến máy tính khác do mạng thực hiện thông qua những quy định thống nhất gọi là giao thức của mạng. - Phân chia hoạt động truyền thông của hệ thống thành nhiều lớp theo các nguyên tắc nhất định - Việc xét các module một cách độc lập với nhau cho phép giảm độ phức tạp cho việc thiết kế và cài đặt. Phương pháp này được sử dụng rộng rãi trong việc xây dựng mạng và các chương trình truyền thông và được gọi là phương pháp phân tầng (layer). 1.3.2. Nguyên tắc của phương pháp phân tầng Mỗi hệ thống thành phần trong mạng được xây dựng như một cấu trúc nhiều tầng và đều có cấu trúc giống nhau như: số lượng tầng và chức năng của mỗi tầng. Nhóm 1 – MM03A 9 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Các tầng nằm chồng lên nhau, dữ liệu được chỉ trao đổi trực tiếp giữa hai tầng kề nhau từ tầng trên xuống tầng dưới và ngược lại. Cùng với việc xác định chức năng của mỗi tầng chúng ta phải xác định mối quan hệ giữa hai tầng kề nhau. Dữ liệu được truyền đi từ tầng cao nhất của hệ thống truyền lần lượt đến tầng thấp nhất sau đó truyền qua đường nối vật lý dưới dạng các bit tới tầng thấp nhất của hệ thống nhận, sau đó dữ liệu được truyền ngược lên lần lượt đến tầng cao nhất của hệ thống nhận. Chỉ có hai tầng thấp nhất có liên kết vật lý với nhau còn các tầng trên cùng thứ tư chỉ có các liên kết logic với nhau. Liên kết logic của một tầng được thực hiện thông qua các tầng dưới và phải tuân theo những quy định chặt chẽ, các quy định đó được gọi giao thức của tầng. Hình 1.5. Mô hình truyền thông đơn giản 3 tầng Trong kiến trúc phân tầng, một số mô hình được phát triển - Mô hình tham chiếu kết nối các hệ thống mở OSI - Mô hình Internet : TCP/IP Xét trên phương diện lập trình với máy tính, ta xét mô hình phân tầng thu gọn: Nói chung trong truyền thông có sự tham gia của các thành phần: các chương trình ứng dụng, các chương trình truyền thông, các máy tính và các mạng. Các chương trình ứng dụng là các chương trình của người sử dụng được thực hiện trên máy tính và có thể tham gia vào quá trình trao đổi thông tin giữa hai máy tính. Trên một máy tính với hệ điều hành đa nhiệm (như Windows, UNIX) thường được thực hiện đồng thời nhiều ứng dụng trong đó có những ứng dụng liên quan đến mạng và các ứng dụng khác. Các máy tính được nối với mạng và các dữ liệu được trao đổi thông qua mạng từ máy tính này đến máy tính khác. Việc gửi dữ liệu được thực hiện giữa một ứng dụng với một ứng dụng khác trên hai máy tính khác nhau thông qua mạng được thực hiện như sau: Ứng dụng gửi chuyển dữ liệu cho chương trình truyền thông trên máy tính của nó, chương trình truyền thông sẽ gửi chúng tới máy tính nhận. Chương trình truyền thông trên máy nhận sẽ tiếp nhận dữ liệu, kiểm tra nó trước khi chuyển giao cho ứng dụng đang chờ dữ liệu. Với mô hình truyền thông đơn giản người ta chia chương trình truyền thông thành ba tầng không phụ thuộc vào nhau là: tầng ứng dụng, tầng giao vận và tầng tiếp cận mạng. Tầng tiếp cận mạng liên quan tới việc trao đổi dữ liệu giữa máy tính và mạng mà nó được nối vào. Để dữ liệu đến được đích máy tính gửi cần phải chuyển địa chỉ của máy tính nhận cho mạngqua đó mạng sẽ chuyển các thông tin tới đích. Ngoài ra máy gửi có thể sử dụng một số phục vụ khác nhau mà mạng cung cấp như gửi ưu tiên, tốc độ cao. Trong tầng này có thể có nhiều phần mềm Tầng giao vận: thực hiện quá trình truyền thông end-to-end giữa 2 ứng dụng không liên quan tới mạng và nằm ở trên tầng tiếp cận mạng. Tầng truyền dữ liệu không quan tâm tới bản chất các ứng dụng đang trao đổi dữ Nhóm 1 – MM03A 10 [...]... 27 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Hình 3.11 Phía client đồng ý nhận file Hình 3.11 Phía client từ chối nhận file Nhóm 1 – MM03A 28 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan KẾT LUẬN Thông qua quá trình làm chương trình, nhóm chúng em cũng hiểu được cách thức, nguyên tắc hoạt động của mô hình Client – Server, biết cách ứng dụng. .. SỬ DỤNG CHƯƠNG TRÌNH 3.2.1 Giao diện 3.2.1.1 Chương trình Server Nhóm 1 – MM03A 23 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Hình 3.2 Chương trình Server 3.2.1.2 Chương trình Client Hình 3.3 Chương trình Client 3.2.1.3 Sử dụng chương trình Chạy chương trình Server trước để Server lắng nghe kết nối từ Client Sau đó copy file client.exe đến các máy client Sau đó chạy chương. .. Trong nhiều trường hợp, một mạng có thể được chia thành nhiều mạng con(subnet), lúc đó có thể đưa thêm các vùng subnetid để định danh các mạng con Vùng subnetid được lấy từ vùng hostid, cụ thể đối với 3 lớp A, B, C Nhóm 1 – MM03A 11 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan CHƯƠNG 2: TỔNG QUAN VỀ LẬP TRÌNH SOCKET 2.1 LẬP TRÌNH MẠNG VỚI TCP SOCKET 2.1.1 Mô hình giao thức... – MM03A 22 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH VÀ THIẾT KẾ GIAO DIỆN 3.1 GIỚI THIỆU VỀ CHƯƠNG TRÌNH Với mục đích muốn các máy trạm có thể trao đổi thông tin giữa các máy với nhau trong mạng lan và nắm được cơ chế cũng như nguyên lý hoạt động của mô hình Client - Server Dựa trên những kiến thức đã học trong môn Lập Trình Mạng Nâng... click-double vào tên máy muốn chat, lúc đó tại server sẽ xuất hiện form hỗ trợ người dùng chat với client, phía client sẽ tự động xuất hiện một form hỗ trợ người dùng chat với server Hình 3.6 Form hỗ trợ server chat với client Nhóm 1 – MM03A 25 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Hình 3.7 Form hỗ trợ client chat với server Ngoài tính năng chat qua mạng lan phần mềm còn có... thức đã học trong môn Lập Trình Mạng Nâng Cao nhóm đã xây dựng chương trình Chat Qua Mạng Lan được viết trên ngôn ngữ lập trình C# Chương trình có giao diện đơn giản, trực quan giúp người sử dụng có thể dễ dàng thao tác và điều khiển Quy trình hoạt động chương trình Hình 3.1 Quá trình kết nối  socket( ): Client yêu cầu tạo một socket để có thể sử dụng các dịch vụ của tầng vận chuyển  connect(): Client... thiết kế tồi có thể làm giảm băng thông của mạng Nhóm 1 – MM03A 16 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Không cần thiết lập liên kết UDP là giao thức phi liên kết, vì thế không cần phải thiết lập liên kết Vì UDP không sử dụng các tín hiệu handshaking, nên có thể tránh được thời gian trễ Đó chính là lý do tại sao DNS thường sử dụng giao thức UDP hơn là TCP-DNS sẽ chậm... trao đổi thông tin với nhau Hạn chế Chương trình chỉ có thể chat đơn giản với nhiều client với một server và ngược lại, chưa có nhiều ứng dụng thêm Hướng mở Tiếp tục hoàn thiện chương trình với nhiều chức năng hơn nữa Nhóm 1 – MM03A 29 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan TÀI LIỆU THAM KHẢO 1 Slide Lập trình mạng nâng cao – Trường CĐ CNTT Hữu Nghị Việt – Hàn 2 C Sharp... Procedure Call-RPC) Đây là một kĩ thuật cho phép các ứng dụng client server tương tác với nhau bằng phương pháp gọi hàm thông thường Nó Nhóm 1 – MM03A 21 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan cung cấp giao diện gọi hàm mà che đi công tác truyền thông client server và việc truyền thông là trong suốt đối với người lập trìnhthuật này sẽ được trình bày trong phần sau Nói... học vào chương trình một cách có hiệu quả Kết quả đạt được o Về lý thuyết: Nắm được cơ bản các kiến thức liên quan đến kỹ thuật lập trình mạng như Socket, TcpListener, TcpClient,… và vận dụng được các kiến thức này vào thực tế o Về thực hành: Xây dựng thành công chương trình chat đơn giản qua mạng Lan, có thể kết nối nhiều client cùng lúc tới Server, và trao đổi thông tin với nhau Hạn chế Chương trình . MM03A 4 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan CHƯƠNG 1: TỔNG QUAN VỀ LẬP TRÌNH MẠNG 1.1. TỔNG QUAN VỀ MẠNG MÁY TÍNH 1.1.1. Khái niệm về mạng máy tính Mạng máy. B, C . Nhóm 1 – MM03A 11 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan CHƯƠNG 2: TỔNG QUAN VỀ LẬP TRÌNH SOCKET 2.1. LẬP TRÌNH MẠNG VỚI TCP SOCKET 2.1.1. Mô hình giao. cậy. 1.2.2.1. Lớp ứng dụng Nhóm 1 – MM03A 8 Sử dụng kỹ thuật lập trình Socket xây dựng chương trình chat qua mạng Lan Tại mức cao nhất này, người sử dụng thực hiện các chương trình ứng dụng truy xuất

Ngày đăng: 29/03/2014, 15:22

Từ khóa liên quan

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

Tài liệu liên quan