JavaSE:和网络相关的协议

1.  协议的概念

    计算机在网络中实现通信,必须有一些规则,这种规则叫做通信协议。

    通信协议可以对速率、传输代码、传输控制步骤、出错控制等,制定统一的标准。

2.  TCP协议

    传输控制协议(Transmission Control Protocol),是一种面向连接的协议,类似于"打电话"

      <1>  建立连接 => 进行通信 => 断开连接

      <2>  在传输前采用"三次握手"方式

      <3>  在通信的整个过程中,全程保持连接,形成数据传输通道

      <4>  保证了数据传输的可靠性、有序

      <5>  是一种全双工的字节流通信方式,可以进行大数据量的传输

      <6>  传输完毕后,需要释放已建立的连接,发送数据的效率比较低

      <7>  断开时,采用“四次挥手”的方式

3.  UDP协议

      用户数据报协议(User Datagram Protocol),是一种非面向连接的协议,类似于写信

        <1>  在通信的整个过程中,不需要保持连接,其实是不需要建立连接。

        <2>  不保证数据传输的可靠性和有序性

        <3>  是一种双全工的数据报信通信模式。每个数据报的大小限制在64k内

        <4>  发送数据完毕后,无需释放资源,开销小,发送数据的效率比较高,速度快

4.  IP地址(重点)

      <1>  192.168.1.1 - 绝大多数路由器的登录地址,主要配置用户名 和 密码以及Mac过滤

      <2>  IP地址是互联网中的唯一地址标识,本质上是由32位二进制组成的整数,叫做IPv4 (主流)

          也有128位二进制组成的整数,叫做IPv6

      <3>  日常生活中,采用点分十进制表示法来进行IP地址的描述,将每个字节的二进制转化为一个十进制整数,

          不同的整数之间采用小数点隔开

          如:

            0x01020304 => 1.2.3.4

      <4>  查看IP地址的方式

            Windows系统: 在dos窗口中使用ipconfig或ipconfig/all命令即可

            Unix/linux系统:在终端窗口中使用ifconfig或/sbin/ifconfig命令即可

      <5>  特殊的地址

            本地回环地址(hostAddress):127.0.0.1

            主机名(hostName):localhost

5.  端口号

    <1>IP地址 - 可以定义到具体某一台设备

    <2>端口号 - 可以定位到该设备中具体某一个进程

    <3>端口号本质上是16位二进制组成的整数,表示范围是: 0 - 65535, 其中 0 -1024之间的端口号通常被系统占用,

      建议编程从1025开始使用

    <4>特殊的端口

        HTTP:80  FTP:21  Oracle:1521  MySQL:3306  Tomcat:8080

    <5>网络编程需要提供:

        IP地址 + 端口号,组合在一起叫做网络套接字: Socket

        

原文地址:https://www.cnblogs.com/JasperZhao/p/14875015.html