<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-fareast-font-family:宋体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; mso-ascii-font-family:Calibri; mso-fareast-font-family:宋体; mso-hansi-font-family:Calibri; mso-font-kerning:0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->
一、服务端 Socket
使用类: ServerSocket serverSocket =new ServerSocket(port)
Socket socket = serverSocket.accept()---Server 阻塞监听连接,当有客户端连接过来时,产生一个 socket 对象, socket 对象中存放客户端的信息
InputStream input=socket.getInputStream()--- 获取客户端的输入流
OutputStream out =socket.getOutputStream()---- 向客户端写入数据的输出流
二、客户端 Socket
使用类: Socket clientSocket = new Socket(host,port)--- 创建客户端 Socket ,当客户端与 Server 连接成功时,产生一个 Socket 对象, socket 对象存放服务端的信息,
三、 OSI 参考模型
1 、物理层
2 、数据链路层
3 、网络层
4 、传输层
5 、会话层
6 、表示层
7 、应用层
四、 TCP/IP 参考模型
1 、应用层
2 、传输层
3 、网络互联层
4 、主机 -- 网络层
ip 协议位于网络互联层,用 IP 地址标识网络上的各个主机, IP 协议把数据分成若干数据包,然后为这些数据包确定合适的路由。路由是指把数据从源主机发送给目标主机的路径
TCP 协议位于传输层,保证两个进程之间可靠的传输数据。每当两个进程之间进行通信,就会建立一个 TCP 连接。 TCP 协议用端口来标识 TCP 连接的两个断点。
UDP 协议位于传输层。
五、 TCP 和 UDP 协议的区别
TCP 协议是面向连接的、可靠的协议:它将源主机发出的字节流无差错的发送到互联网上的目标主机。在发送端, TCP 协议负责把上层传送下来的数据分成报文段传递给下层。在接收端, TCP 协议负责把收到的报文进行重组后递交给上层。 TCP 协议还要处理端到端的流量控制,已避免接收速度缓慢的接收方没有足够的缓冲区来接收发送放发送的大量数据。
FTP 、 HTTP 和 Telenet 建立在 TCP 协议基础上。
UDP 协议是一个不可靠的、无连接的协议,主要适用于不需要对报文进行排序和流量控制的场合。 UDP 不能保证数据报的接收顺序和发送顺序相同,甚至不能保证他们是否能够全部到达主机。 -----SNMP 和 DNS 协议建立在 UDP 基础上。