python作业-网络编程

本文介绍了Python网络编程的基础知识,包括C/S架构、互联网协议五层模型、TCP与UDP的区别、TCP的三次握手与四次挥手、TCP与UDP的可靠性、套接字(Socket)原理及TCP套接字通信流程。此外,还讨论了TCP粘包现象及其原因,并给出了基于Socket开发聊天程序、远程命令执行和FTP程序的示例,以及UDP协议的应用实例。
摘要由CSDN通过智能技术生成

1、什么是C/S架构?

答:C指的是client(客户端软件),S指的是Server(服务端软件)

2、互联网协议是什么?分别介绍五层协议中每一层的功能?

答:互联网的核心就是由一堆协议组成。如果把计算机比作人,互联网协议就是计算机界的英语。所有的计算机都学会了互联网协议,那所有的计算机都就可以按照统一的标准去收发信息从而完成通信了。

  1. 应用层:规定应用程序的数据格式。
  2. 传输层:建立端口到端口的通信。
  3. 网络层:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址
  4. 数据链路层:定义了电信号的分组方式,分组方式后来形成了统一的标准,即以太网协议ethernet
  5. 物理层:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0

3、基于tcp协议通信,为何建立链接需要三次握手,而断开链接却需要四次挥手

答:因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client端,"你发的FIN报文我收到了"。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四步握手。

4、为何基

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值