网络编程学习日记总结:
-------------------------------------
网络参考模型:分为 OSI参考模型和TCP/IP参考模型。
OSI参考模型分为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。
TCP/IP参考模型分为:应用层、传输层、网际层、主机至网络层。
例如javaweb属于应用层协议,如http协议和fttp协议等。
UDP协议TCP协议等属于传输层。
主机至网络层是指网线、光纤、无线等硬件设备。
-------------------------------------------
UDP和TCP的区别:
1. 两者最大的区别是UDP是不需要建立连接的;而TCP是需要建立连接,形成数据传输的通道。
2.因为无连接,UDP是不可靠协议;而TCP必须建立连接,是可靠协议。
3.UDP速度快;而TCP速度相对慢点,效率会稍低。
4.UDP将数据及源和目的封装成数据包中,每个数据包的大小限制在64K内;而TCP在连接中可以进行大数据量传输。
例子:UDP:如QQ聊天,视频会议等。
TCP:如打电话,下载等。
--------------------------------------------------
Socket: 为网络服务提供的一种机制。
通信两端都有Socket,网络通信其实就是Socket间的通信,数据通过IO传输。
创建UDPSocket,通过DategramSocket.
---------------------------------------------------
客户端,
通过查阅socket对象,发现在该对象建立时,就可以去连接指定主机。
因为tcp是面向连接的。所以在建立socket服务时,
就要有服务端存在,并连接成功。形成通路后,在该通道进行数据的传输。
服务端:
1,建立服务端的socket服务。ServerSocket();
并监听一个端口。
2,获取连接过来的客户端对象。
通过ServerSokcet的 accept方法。没有连接就会等,所以这个方法阻塞式的。
3,客户端如果发过来数据,那么服务端要使用对应的客户端对象,
并获取到该客户端对象的读取流来读取发过来的数据。
并打印在控制台。
-----------------------------------------------------
URL:在应用层,会用应用层协议拆包。 Socket在传输层。
String getFile()
获取此 URL 的文件名。
String getHost()
获取此 URL 的主机名(如果适用)。
String getPath()
获取此 URL 的路径部分。
int getPort()
获取此 URL 的端口号。
String getProtocol()
获取此 URL 的协议名称。
String getQuery()
获取此 URL 的查询部
------- android培训、 java培训、期待与您交流! ----------