1. Trang chủ
  2. » Giáo Dục - Đào Tạo

LẬP TRÌNH MẠNG( Network programming )

10 320 2

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 84,5 KB

Nội dung

LẬP TRÌNH MẠNG Network programming 1.Thông tin chung môn học - Tên môn học: Lập trình mạng - Mã môn học: CNPM1212 - Số đvht: 4 - Loại môn học: Chuyên ngành bắt buộc - Các môn học tiên q

Trang 1

LẬP TRÌNH MẠNG

( Network programming )

1.Thông tin chung môn học

- Tên môn học: Lập trình mạng

- Mã môn học: CNPM1212

- Số đvht: 4

- Loại môn học: Chuyên ngành bắt buộc

- Các môn học tiên quyết: Mạng máy tính, phân tích và thiết kế hệ thống, lập trình hướng đối tượng(OOP)

- Phân bổ thời lượng:

5 Lý thuyết: 45 tiết

6 TH: 14 tiết

7 Kiểm tra: 1 tiết

- Khoa/bộ môn phụ trách môn học: Công nghệ phần mềm

2.Mục đích, yêu cầu của môn học

- Trang bị cho học sinh kiến thức cơ bản về lập trình mạng, các mô hình và phương pháp lập trình mạng mà chủ yếu sử dụng Socket và Lập trình phân tán đối tượng

- Hình thành kỹ thuật lập trình mạng thông qua việc sử dụng một ngôn ngữ lập trình cụ thể

là ngôn ngữ java

- Học sinh hiểu sâu hơn về mạng và biết cách lập trình với một số giao thức dịch vụ phổ biến trên mạng như DNS, Telnet, FTP, IMAP4, SMTP, POP3, TFTP, RTP, Hxxx và biết cách phát triển các chương trình ứng dụng mạng với các giao thức đó

- Tiếp cận mô hình lập trình mạng phức tạp như mô hình multi-tier cùng với phương pháp lập trình hướng dịch vụ(SOP), là phương pháp hiện đang được sử dụng rộng rãi trong phát triển các ứng dụng mạng lớn, phức tạp

- Làm cho sinh viên nắm được kỹ thuật cơ bản trong lập trình ứng dụng mạng trong các môi trường mạng cục bộ, mạng internet, mạng không dây và ứng dụng mạng qua mạng PSTN, đồng thời hình thành kiến thức lập trình ứng dụng mạng thực tế, khả năng nghiên cứu thông qua hệ thống bài tập lớn

- Xây dựng giao thức truyền thông đơn giản

3.Nội dung chi tiết môn học

PHẦN I LẬP TRÌNH ỨNG DỤNG MẠNG CƠ SỞ

Trang 2

Chương 1 Một số kiến thức cơ sở cho lập trình mạng

1.1 Giới thiệu về lập trình mạng

Công thức:

Lập trình mạng= KTM+ NNLT+MHLTM

- KTM: Nắm chắc kiến thức mạng máy tính

- NNLT: Nắm chắc ngôn ngữ lập trình

- MHLTM: Mô hình lập trình mạng

1.2 Một số kiến thức mạng cơ sở

1.2.1 Mô hình tham chiếu OSI/ISO và họ giao thức TCP/IP

1.2.2 Dịch vụ tên miền DNS

1.2.3 Các giao thức TCP, UDP, IP, ARP, ICMP và các đơn vị truyền dữ liệu của chúng 1.2.4 Địa chỉ IP, mask, kỹ thuật chia mạng con

1.2.5 Địa chỉ cổng (PORT), các giải địa chỉ cổng

1.2.6 Socket, giao diện Socket, địa chỉ Socket

1.2.7 Địa chỉ vật lý(MAC)

1.2.8 An toàn, bảo mật mạng

1.3 Ngôn ngữ lập trình

1.3.1 Các ngôn ngữ lập trình

1.3.1.1 Giới thiệu đặc điểm, thư viện, kỹ thuật lập trình mạng NET và Java

- Lập trình bằng NET

- Lập trình bằng JAVA

1.3.1.2 Các ngôn ngữ khác: VC++, VB, ASSEMBLER, C/C++

1.3.2 Ôn tập và Bổ túc kiến thức công nghệ JAVA

1.3.2.1.Lập trình Java cơ sở

1.3.2.2 Lập trình Java OOP

1.3.2.3 Lập trình GUI và Applet

1.3.2.4 Lập trình với CSDL

1.3.2.5 Kỹ thuật lập trình đa luồng(Thread)

1.3.2.6 Nhập xuất dữ liệu với thiết bị vào/ra chuẩn, tệp và mạng

1.3.2.7 Một số gói thư viện cơ bản: java.io, java net, java rmi

Trang 3

1.4 Các mô hình lập trình mạng

1.4.1 Mô hình Client/Server

1.4.2 Mô hình peer – to – peer

1.4.3.Giới thiệu mô hình đa tầng và lập trình hướng dịch vụ(SOP)

1.4.4 Giới thiệu mô hình MVC(Model- View- Controller)

Chương 2 Lập trình mạng với Socket

2.1 Lập trình với địa chỉ IP và thẻ giao tiếp mạng(NIC)

2.1.1 Địa chỉ IPv4, IPv6 và các lớp thao tác với địa chỉ IP

- InetAddress

- Inet4Address

- Inet6Address

2.1.2 Thẻ giao tiếp mạng và lập trình với thể giao tiếp mạng

- Đặc điểm của NIC

- Lớp NetworkInterface

2.1.3 Các ví dụ

2.2 Lập trình mạng với TCPSocket

2.2.1 Giao thức TCP

2.2.2 Đặc điểm của chương trình server đáp ứng nhiều kết nối đồng thời

2.2.3 Một số lớp phục vụ lập trình mạng với TCP socket

2.2.3.1 Lớp ServerSocket: Đặc điểm, các cấu tử, các phương thức và

cách sử dụng

2.2.3.2 Lớp Socket: Đặc điểm, các cấu tử, các phương thức và cách sử dụng 2.2.3.2 Một số lớp khác

2.2.4 Kỹ thuật lập trình truyền thông với giao thức TCP

2.2.5 Một số chương trình ví dụ

2.3 Lập trình mạng với UDPSocket

2.3.1 Giao thức UDP

2.3.2 Một số lớp phục vụ lập trình mạng với UDP socket

2.3.2.1 Lớp DatagramSocket: Đặc điểm, các cấu tử, các phương thức và cách sử dụng

Trang 4

2.3.2.2 Lớp DatagramPackage: Đặc điểm, các cấu tử, các phương thức và cách sử dụng

2.3.2.3 Một số lớp khác

2.3.2.4 Kỹ thuật lập trình truyền thông với giao thức UDP

2.3.2.5 Một số chương trình ví dụ

2.4 Xây dựng chương trình server phục vụ nhiều chương trình máy khách

2.4.1 Các mô hình server đáp ứng nhiều kết nối đồng thời và lặp

2.4.2 Server đáp ứng nhiều kết nối đồng thời

2.4.3 Server đáp ứng nhiều kết nối kiểu lặp

2.4.4 Một số chương trình ví dụ

2.5 Lập trình truyền thông với địa chỉ Multicast và BroadCast

2.5.1 Địa chỉ multicast và broadcast

2.5.2 Các lớp java hỗ trợ lập trình multicast

2.5.3 Kỹ thuật lập trình truyền thông multicast và broadcast

2.5.4 Một số chương trình ví dụ

2.6 Xây dựng ứng dụng mạng kểu peer-to-peer

2.6.1 Đặc điểm chương trình kiểu peer-to peer

2.6.2 Ky thuật lập trình và ví dụ

2.7 lập trình với giao diện Raw Socket

2.7.1 Đặc điểm giao diện Raw Socket

2.7.2 Xây dựng một số chương trình với RAW Socket bằng java: ping, tracer, quét cổng

và phân tích gói tin

Chương 3 Lập trình với một số giao thức mạng

3.1 Giới thiệu một số giao thức mạng

3.2 Lập trình với giao thức Telnet

i Đặc điểm của giao thức Telnet

ii Cơ chế làm việc của giao thức Telnet iii Xây dựng chương trình TelnetServer đơn giản 3.2.3 Xây dựng chương trình TelnetClient đơn giản

3.2.4 Bài tập

3.3 Lập trình với giao thức FTP và TFTP

Trang 5

3.3.1 Đặc điểm của giao thức FTP

3.3.2 Mô hình và cơ chế làm việc

3.3.3 Tập lệnh và đáp ứng của FTP

3.3.4 Xây dựng chương trình truyền tệp FTP và thử nghiệm

3.3.5 Bài tập

3.3.6 Lập trình với giao thức TFTP

3.4 Lập trình với các giao thức SMTP, POP3, IMAP4

3.4.1 Mô hình hệ thống thư tín điện tử

3.4.2 Tập lệnh và đáp ứng của SMTP

3.4.3 Tập lệnh và đáp ứng của POP3 và IMAP4

3.4.4 Lập trình ứng dụng gửi thư với SMTP

3.4.5 Lập trình ứng dụng truy cập hộp thư với POP3, IMAP4

3.4.6 Lập trình javamail

3.4.7 Bài tập

3.5 Lập trình ứng dụng mạng với giao thức HTTP

3.5.1 Đặc điểm và cơ chế truyền thông của giao thức http 5.5.2 Các dạng thông điệp http

5.5.3 Khái niệm URL, URI

5.5.4 Lớp URL, URLCONNECTION và các lớp hỗ trợ khác của Java 5.5.5 Bài tập ví dụ

- Lập trình duyệt WEB đơn giản

- Xây dựng chương trình WebServer

- Xây dựng chương trình Proxy Server

Chương 4 Lập trình phân tán

4.1 Giới thiệu về lập trình phân tán và lập trình phân tán đối tượng

4.1.1 RPC 4.1.2 RMI 4.1.3 So sánh RMI với RPC 4.1.4 Các ngôn ngữ hỗ trọ lập trình phân tán 4.2 Lập trình phân tán đối tượng với RMI

Trang 6

4.2.1 Khái niệm RMI và giao thức JRMP

4.2.2 Kỹ thuật lập trình RMI

4.2.3 Cơ chế làm việc của RMI

4.2.4 Gói java.rmi và java.rmi.server

4.2.5 Truyền tham số cho phương thức gọi từ xa

4.2.6 Kỹ thuật sử dụng một đối tượng để sản sinh nhiều đối tượng 4.2.7 Trình đăng ký rmiregistry.exe và trình đang ký tự định nghĩa 4.2.8 Bài tập ví dụ

4.3 Giới thiệu lập trình phân tán CORBO

Chương 5 Lập trình mạng với cơ chế an toàn bảo mật

5.1 Giới thiệu lập trình an toàn bào mật mạng

5.2 Giao thưc SSL

5.3 Các lớp Java hỗ trợ lập trình socket với SSL

5.4 Kỹ thuật lập trình ứng dụng mạng sử dụng với SSL

5.5 Bài tập

PHẦN II LẬP TRÌNH ỨNG DỤNG MẠNG NÂNG CAO

Chương 6 Kiến trúc đa tầng, lập trình hướng dịch vụ(SOP) và webservice

6.1 Kiến trúc đa tầng(Multi-Tier)

6.2 Kỹ thuật lập trình hướng dịch vụ(SOP)

6.3 Lập trình WebService

6.4 Bài tập

Chương 7 Lập trình ứng dụng mạng thời gian thực

7.1 Giao thức RTP

7.2 Các giao thức Hxxx

7.3 Thư viện JTAPI

7.4 Phát triển các dịch vụ thời gian thực trên mạng Internet

7.5 Xây dựng chương trình VoiIP và Video Confrencing đơn giản

Chương 8 Lập trình một số dịch vụ mạng vô tuyến

8.1 Mạng BlueTooth và mạng Sensor

8.2 Dịch vụ WI-FI, WIMAX

Trang 7

8.3 Dịch vụ SMS, MMS

8.4 Thu nhận tín hiệu GPS

5.Học liệu

* Tài liệu chủ yếu: [1],[3], [8],[21]

[1] Java Network Programming, 3rd Edition, O’ Reilly, October 2004

[2] Essential Windows Communication Foundation for NET Framework 3.5, Addison-Wesley, 2008

[3] TCP/IP Socket in Java, Second Edition, Elsevier, 2008

[4] TCP/IP Socket in C#, , Elsevier, 2004

[5] TCP/IP Sockets in C, Morgan KauFmann Publicshers, 2001

[6] Linux Socket Programming by Example, Que, 2000

[7] Core Java Volume II-Advanced Features, Eighth Edition, Prentice Hall, 08/2008

[8] J2SE 6.0 Documentation, J2EE 6.0 Documentation, J2ME Documentation: Networking Features, Java RMI, Java RMI over IIOP, CORBA, …

[9] Rock Saw 0.6.2 API

[10] The Java EE Tutorial for Sun Java System Application Server 9.1, Sun Microsystem, 2007

[11] The J2EE Architect’ s HandBook, DVT Press, 2004

[12] Beginning J2ME from Novice to Professional, thrird Edition, Apress, 2005

[13] SOA Using Java Web Services, Prentice Hall, 2007

[14] Beginning EJB 3 Application Development, Apress, 2006

[15] Service Oriented Architecture With Java, Packt, 2008

[16] Developing Practical Wireless Application, Elsevier, 2007

[17] Designing Enterprise Application, Sun Microsystem, 2000

[18] Java Programming with Oracle JDBC, O’ Reilly, 2002

[19] The Complete Reference J2ME, McGraw-Hill, 2003

[20] USB Mass Storage( Designing and Programming Device And Embedded Hosts), Lakeview Reseach LLC, 2006

[21] TCP/IP protocol Suite

6.Hình thức tổ chức dạy học:

Thời gian Nội dung

Hỡnh thức tổ chức dạy-học Yêu cầu

sinh viên Ghi

Trang 8

Giờ lên lớp Thực Tự học,

Lý thuyết

Hướng dẫn Bài tập

Thảo luận

7.Thang điểm đánh giá: 10/10

8.Phương pháp, hình thức kiểm tra-dánh giá kết quả học tập môn học:

1 Các loại điểm kiểm tra va hình thức đánh giá:

- Tham gia học tập trờn lớp: (đi học đầy đủ, chuẩn bị bài tốt và tớch cực thảo luận,…);

- Phần tự học, tự nghiờn cứu cú hướng dẫn của giảng viờn: Dưới dạng bài tập lớn.

- Hoạt động theo nhúm: chia lớp theo nhúm (mỗi nhúm 3 sinh viờn)

- Kiểm tra - đỏnh giỏ giữa kỡ: Thi viết

- Kiểm tra - đỏnh giỏ cuối kỡ: Thi thực hành trên máy

8.2 Trọng số cỏc loại điểm kiểm tra:

Trang 9

- Tham gia học tập trờn lớp: 10 %

- Thực hành/Thớ nghiệm/Bài tập/Thảo luận: 10 %

Bao gồm:

+ Điểm bài tập lớn

+ Điểm thi hết môn

Công thức:

Điểm kiểm tra cuối kỳ= (2*Điểm thi hết môn + Điểm Bài tập lớn)/3

Ngày đăng: 11/04/2016, 11:24

TỪ KHÓA LIÊN QUAN

w