第13章 TCP/IP和网络编程
一、知识点归纳
一、网络编程简介
- 计算机网络:将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,实现资源共享和信息传递的计算机系统。
- 网络编程:在网络通信协议下,不同计算机上运行的程序可以进行数据传输。
二、TCP/IP协议
- 协议分层:网络结构分层,常见的为4层架构(物理层、数据链路层、网络层、传输层)和5层架构(应用层、传输层、网络层、数据链路层、物理层)。
- 协议设计原则:下层看不见上层的内容,仅将上层协议包作为payload直接包装成下层的数据包。
三、IP主机/IP地址
- IP地址:分配给上网设备的数字标签,用于在网络中唯一标识设备。
- IPv4和IPv6:IPv4为32位(4字节)地址,IPv6为128位(16字节)地址。
四、IP协议
- IP数据包格式:包含头部和数据部分,头部包含版本、首部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、头部校验和等字段。
五、路由器
- 路由器:在不同网络之间转发数据包的设备。
六、UDP
- 用户数据报协议(UDP):是一种无连接的、不可靠的数据传输协议,适用于实时应用,如音频、视频传输等。
七、TCP
- 传输控制协议(TCP):是一种面向连接的、可靠的数据传输协议,适用于要求数据完整、可靠的应用。
八、端口编号
- 端口:应用程序在计算机中的唯一标识,用于区分不同应用程序。
九、网络和主机字节序
- 字节序:网络中的数据传输顺序,分为大端序(Big-endian)和小端序(Little-endian)。
十、TCP/IP网络中的数据流
- 数据流:从源端到目的端的数据传输过程。
十一、网络编程
- 套接字编程:基于TCP/IP协议,使用套接字(socket)进行网络编程。
十二、UDP回显服务器——客户机程序
- UDP回显服务器:接收客户机发送的数据,并原样发送回客户机。
十三、TCP回显服务器——客户机程序
- TCP回显服务器:接收客户机发送的数据,经过处理后发送回客户机。
十四、主机名和IP地址
- 主机名:用于标识网络中的主机。
- IP地址:用于唯一标识网络中的设备。
十五、Web和CGI编程
- Web:基于HTTP协议的分布式信息系统。
- CGI:用于在Web服务器上执行外部程序的脚本语言。
二、ChatGPT