TCP/IP传输模型:
【注:】图中的ARP协议是网络层和链路层之间的协议,ARP协议用来获取主机IP和MAC地址
实际的网络编程是采用TCP/IP协议组来完成,因此TCP/IP模型的应用层底层的http、https、ftp、dns等协议就靠程序编辑实现
Java实现网络编程数据传输
实现TCP传输(面向连接)
client:
1、数据通过相应的应用层协议(例如:http、https、ftp等协议)
2、通过Socket对象将符合应用层协议的数据通过Socket发送数据
3、Socket底层封装了传输层、网络层、链路层、物理层,以顺应第2步
【补充:】socket实质上就是接口
server:
对数据包层层解析,物理->链路层->网络层->传输层(执行TCP协议传输)->通过ServerSocket对象来监听相应Socket端口-》通过对应的应用层协议(例如:http、https、ftp、dns等协议)来解析出数据-》把数据封装到requerst,response等-》将requerst,response封装到servlet-》加入到新的线程运行。。。(后续都是对数据的处理了)
实现UDP传输(面向无连接)
client:
1、数据通过相应的应用层协议(例如:dns等协议)
2、通过Socket对象将符合应用层协议的数据通过通过DatagramSocket、DatagramPacket对象实现UDP传输
3、Socket底层封装了传输层、网络层、链路层、物理层,以顺应第2步
server:
对数据包层层解析,物理->链路层->网络层->传输层(执行UDP协议传输)->通过DatagramSocket对象来监听相应Socket端口,通过DatagramPacket接收数据-》通过对应的应用层协议(例如:dns等协议)来解析出数据-》把数据封装到requerst,response等-》将requerst,response封装到servlet-》加入到新的线程运行。。。(后续都是对数据的处理了)