1.实现网络传输,需要考虑的问题:
1.1 如何准确定位网络上的主机:IP地址定位主机,端口号定位一个应用===>InetAddress类
如何创建一个InetAddress对象:getByName(""); 比如:InetAddress inet = InetAddress.getByName("www.baidu.com");
如何获取本机的InetAddress对象:getLocalHost();
域名:getHostName() ip:getHostAddress()
1.2 如何进行可靠、高效地数据传输:有对应着的协议:OSI参考模型和TCP/IP参考模型
传输层的TCP与UDP协议的区别:
TCP协议:使用TCP前,必须建立TCP连接,形成数据传输通道
传输前,采用“三次握手”方式
TCP协议进行通信的两个应用进程:客户端、服务端
在连接中可进行大量数据传输
传输完毕,需释放已建立的连接,效率低
UDP协议:将数据、源、目的封装成数据包,不需要建立连接
每个数据报的大小限制在64K内
因无需建立连接,是不可靠的
发送数据结束时无需释放资源,速度快
2. TCP编程:Socket ServerSocket
UDP编程:DatagramSocket Datagrampacket
URL编程:统一资源定位符