计算机网络编程 - 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:

                    
                
                
            
        
浙公网安备 33010602011771号