计算机网络编程 - TCP(笔记)

 

  javaWeb: 称为 网页编程 (B/S)。

  网络编程: TCP/IP   (C/S    客户端)。

 

网络通讯要素

  如何实现网络通讯?

    通讯双方地址: ip 、 端口号  、规则(网络通讯协议)

 

OSI七层模型、TCP/IP 参考模型

  

 

 

IP:

  IP地址:inetAddress

    唯一定位一台网络上的计算机

    127.0.0.1 :是本机地址 ,也可用localhost 表示

    ip地址的分类:

      ipV4 / ipV6:

          ipV4: 127.0.0.1 由4个字节组成。 0~255 

          ipV6: fe80::a9fa:c0a8:5810:eaca%3。 128位。8个无符号整数!

      公网(互联网) - 私网(局域网):

          ABCD类地址

          私网: 192.168.xx.xx 专门给组织内部使用

 

  端口:

    端口表示计算机上的一个程序的进程。

      不同的进程有不同的端口号!用来区分软件。

      被规定 0 ~ 65535

      TCP,UDP : 65535 * 2  tcp: 80  udp:80  单个协议下,端口号不能冲突。

      端口分类:

          公有端口 0 ~1023

            HTTP : 默认端口 80。

            HTTPS : 默认端口 443。

            FTP : 默认端口 21。

            TELENT:默认端口 23。

 

      程序注册端口: 1014 ~ 49151 ,分配用户或者程序

            Tomcat : 8080。

            MySql : 3306。

            Oracle : 1521。

 

      动态、私有: 49152 ~ 65535。

 

      Cmd 指令:

          netstat -ano 获取所有端口信息。

          netstat -ano | findstr "端口"  查询指定的端口。

          tasklist | findstr "端口" 查看指定端口的进程。

          Ctrl + shift + ESC  打开任务管理器。

 

代码:

 

 

通讯协议:

 

    协议: 约定。

    网络通讯协议: 速率, 传输码率, 代码结构,传输控制。。。

    TCP: 用户传输协议。

    UDP: 用户数据报协议。

    TCP/IP 实际上是一组协议。

 

TCP、UDP 对比:

    TCP: 客观来讲可以比作打电话

      连接稳定

      需要三次握手,四次挥手

      客户端、服务端

      传输完成,释放连接,效率低

 

    UDP:客观来讲可以比作发短信

      不需要连接,不稳定

      客户端、服务端 : 没有明确的界限

      不管有没有准备好,都可以发给你。

 

TCP 创建过程

  客户端:

    1、连接服务器socket

    2、发送消息

  

  服务器

    1、建立服务器端口ServerSocket

    2、等待用户连接 accept

    3、接收消息

 

代码示例

客户端代码:

 

 

服务端代码:

 

 

关于文件传输

示例代码1:

 

 示例代码2:

 

posted @ 2021-05-07 00:18  初心不负~  阅读(157)  评论(0)    收藏  举报