课程大纲
1、网络编程基本概念
2、网络编程TCP协议
3、TCP实现ECHO程序
4、服务器与多客户端通信
5、多客户端之间的通信
6、网络编程UDP协议
7、URL
8、MINA框架
1、网络编程基本概念
1、什么是计算机网络
把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使众
多的计算机可以方便地互相传递信息,共享硬件、软件、数据信息等资源。
2、计算机网络的主要功能
资源共享
信息传输与集中处理
均衡负荷与分布处理
综合信息服务(www/综合业务数字网络ISDN)等
3、网络通信协议
要使计算机连成的网络能够互通信息,需要对数据传输速率、传输代码、代码结构、传输控制步骤、出错控制等
制定一组标准,这一组共同遵守的通信标准就是网络通信协议,不同的计算机之间必须使用相同的通讯协议
才能进行通信。
网络通信接口
为了使两个结点之间能进行对话,必须在它们之间建立通信工具(即接口),使彼此之间能进行信息交换。接口包括
两部分:
(1)硬件装置:实现结点之间的信息传送
(2)软件装置:规定双方进行通信的约定协议
4、TCP/IP
TCP/IP:传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是Internet最基本的协议、Internet国际互
联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。
IP地址:网络中每台计算机的一个标识号,本地IP:127.0.0.1 localhost
端口号(PORT):端口号的范围:0-65535之间,0~1023之间的端口数是用于一些知名的网络服务和应用
5、程序开发结构
网络编程主要是指完成C/S程序的开发,程序的开发结构有两种:
· C/S(客户端/服务器)
开发两套程序,两套程序需要同时维护,例如:QQ。CS程序一般比较稳定
· B/S(浏览器/服务器)
开发一套程序,客户端使用浏览器进行访问,例如:各个论坛。BS程序一般稳定性较差,而且安全性较差。但是,C/S的程序开发在实际的Java应用中毕竟很少了,而且整个java基本上都是以B/S为主。
C/S程序主要可以完成以下两种程序的开发:
· TCP:(Transmission Control Protocol)传输控制协议,采用三方握手的方式,保证准确的连接操作。
· UDP:(User Datagram Protocol)数据报协议,发送数据报,例如:手机短信或者是QQ消息。
TCP、UDP的数据帧格式简单图例:
其中协议类型用于区分TCP、UDP