合集-网络编程炒饭
摘要:一、网络结构模型 C/S和B/S都是互联网中常见的网络结构模型。 引言 刚开始的时候用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端。 客户端:用户安装的软件; 服务端:统一管理数据库的主机中的软件就叫做服务端,再后来服务端不只是管理数据,外加处理业务逻辑。 1.1 什么是C/S模型
阅读全文
摘要:网络编程 网络编程的概念 1. 地球村 随着广播、电视、互联网的出现,随着各种现代交通方式的飞速发展,人与人之间的时空距离骤然缩短,整个世界紧缩成一个“村落”。 地球村也译为世界村(global village),对地球的一种比喻说法。现代科技的迅速发展,缩小了地球上的时空距离,国际交往日益频繁便利
阅读全文
摘要:引言 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就成功了。 面试官:然后呢? 求职者:这就是三次握手的过程,很简单
阅读全文
摘要:Socket介绍 假设我们需要编写一个C/S架构的程序,实现数据交互,就需要使用到OSI七层协议,由于它的缺点是分层太多,增加了网络工作的复杂性,所以没有大规模应用。后来人们对 OSI 进行了简化,合并了一些层,最终只保留了 4 层,从下到上分别是接口层、网络层、传输层和应用层,这就是 TCP/IP
阅读全文
摘要:基于TCP的套接字 【1】方法简介 tcp是基于链接的 必须先启动服务端 然后再启动客户端去链接服务端 tcp服务端 server = socket() #创建服务器套接字 server.bind() #把地址绑定到套接字 server.listen() #监听链接 inf_loop: #服务器无限
阅读全文
摘要:基于UDP的套接字 udp是无链接的,先启动哪一端都不会报错 【1】方法简介 (1)UDP服务端 server = socket() #创建一个服务器的套接字 server.bind() #绑定服务器套接字 inf_loop: #服务器无限循环 conn = server.recvfrom()/co
阅读全文
摘要:粘包问题 只有TCP有粘包现象,UDP永远不会粘包 什么是粘包 存在于客户端接收数据时,不能一次性收取全部缓冲区中的数据.当下一次再有数据来时,缓冲区中剩余的数据会和新的数据'粘连'在一起.这就是粘包现象。 ## 什么是粘包? 存在于TCP/IP协议中数据粘连在一起。 ## socket中造成粘包现
阅读全文
摘要:【一】网络通信实现 【1】实现网络通信的四要素 本机的IP地址 子网掩码 网关的IP地址 DNS的IP地址 【2】获取四要素的两种方式 (1)静态获取 即手动配置 (2)动态获取 通过dhcp获取 以太网头 ip头 udp头 dhcp数据包 (1)最前面的”以太网标头”,设置发出方(本机)的MAC地
阅读全文