Java 网络编程的一些概念

2020-03-23 16:01:16来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Java 网络编程的一些概念

 

网络编程:实现连接到网络的计算机之间的网络通信,比如QQ的聊天、传文件。

 

 

ip:一台计算机在网络中的唯一标识

查看本机ip:windows是ipconfig,linux是ifconfig

 

 

ipv4:4个整数,0-255之间,点号分隔,比如192.168.1.1,约42亿个地址,2011年初已耗尽

 

ipv6:8组,每组4个16进制数,冒号分隔,比如ABCD:0000:2C4F:0000:0000:EF01:2345:6789

如果一组全是0,可缺省,上面的地址可简写为ABCD::2C4F:0000:0000:EF01:2345:6789,但只能缺省一次(只能出现一次::) 

也可以简写为ABCD:0000:2C4F::EF01:2345:6789,缺省了2组0

 

 

本地回路地址:127.0.0.1(ipv4)      ::1(ipv6)

广播地址:255.255.255.255

 

 

端口号:唯一标识一台机器上的某个程序。ip确定是哪台机器,port确定是这台机器上的哪个程序。

范围:0-65535,尽量使用1024以上的端口号,1024以下的基本都被OS用了。

 

 

协议:

  • TCP  面向连接(3次握手),数据安全(需要对方存在、且已启动才能进行通信),因为要保证传输安全,所以传输速度略慢,要区分客户端、服务端。
  • UDP  无连接,数据不安全(直接发送数据,不管对方是否存在、是否已启动),速度快,不区分客户端、服务端

三次握手:客户端先向服务器发起请求,服务端响应请求,客户端向服务器传输数据。

 

 

套接字(socket):

ip:port的形式,由ip、port组成(唯一标识)。

通信的两端都有socket,网络通信其实就是socket之间的通信,数据在2个socket之间通过IO流传输。

这也是网络通信的原理。

 


原文链接:https://www.cnblogs.com/chy18883701161/p/12554612.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java多线程之线程池

下一篇:nested exception is java.lang.StackOverflowError解析