网络编程01

      最后更新:2021-10-30 20:38

      • 包括网络规划在内的课程方案包括以下内容:
        在这里插入图片描述

        01网络编程第一天

        • day01
        • 1. 了解OSSI 7和TCP/IP 4层网络结构
        • 1.2 数据传输程序
        • 1.3 网络应用程序中看到的设计模式
        • 经常用于网络的议定书
        • 一.5 网络术语知识
        • 一.6. 重要访谈专题
        • 二. 用插座编程
        • 网络字节转换(第二部分)
        • 将双字节序列转换为 IP 地址的 2.A 函数 。
        • 有2.3个主要结构通常用于套接字编程。
          • 2.4.1 套接字函数
          • 函数二. four.2
          • 监听功能 2. four. 3
          • 接受函数 2.. four. four
          • 2.4.5 链接函数
        • 2. 5 Linux 上的执行 Cpp 代码
        • 2.6 服务器侧发展(Video 14)
        • 二.7 发展客户方案规划(Video 15)

      day01

      • 了解OSSI 7和TCP/IP 4网络模型的结构
      • 承认共同网络协议格式
      • 处理网络字节网络主机字节转换(大端和小端技术)
      • 解释通信进程的 TCP 服务器端 。
      • TCP 客户通信流程产出
      • 自行写入 TCP 服务器终端代码 。
      • 自行撰写 TCP 客户端代码 。

      1. 了解OSSI 7和TCP/IP 4层网络结构

      • 议定书:从申请的角度来看,议定书可被视为数据传输和数据解释的规则(东道方之间通信使用的共同语言)。

      *文件传输的例子-FTP
      在这里插入图片描述

      • (最佳)OSSI 第七层模型
        在这里插入图片描述
        路由器是连接各个网络部门的桥梁,通过知识产权汇总连接各个网络部门。TCP 口袋式TCP内核达到会话层,这意味着该层:解码,例如GBK、utf-8。
        开发应用层协议

      [应使用电讯会议表格。]
      物理层、数据层、网络层、传输层、对话层、表达式层和应用层都是相互关联的。
      在这里插入图片描述

      • 网络进程中采用的模式
        在这里插入图片描述
        在这里插入图片描述

      1.2 数据传输程序

      数据通信程序是发送者和接收者打包层的方法。
      在这里插入图片描述

      1.3 网络应用程序中看到的设计模式

      C/S (客户/服务员) 模式 :
      B/S 模式: 这里指浏览器和服务器模式 。

      :优缺点:
      C/S结构可以保证性能,数据可以就地存储到客户手中,数据传输效率可以提高,使用的程序程序具有合理的多功能性。 (典型的大规模网络编程)
      缺点包括安全和工作量。
      B/S:浏览器不需要设计,不需要多少发展,是便携式的,不受平台限制的限制。
      http 协议的智能选择防止数据被缓存, 降低性能 。

      经常用于网络的议定书

      • 将数据链接层(数据链接层:数据框架格式)捆绑在网络界面层的协议被称为一个醚网格框架。 (任何写入代码都无法被位、 字符串或 mmcpy 截取 。 )
        判断数据类型,作用。ARP:ip->mac地址,RARP:mac->ip
        在这里插入图片描述
      • 例如,考虑以框架格式0806处理ARP的过程:
        收音机,配对和回应 以ARP的回答。
      • 了解如何使用 IP 协议分割数据 。
      • 数据框架格式 TCP 和 UDP
        TCP是相互联系的,但UDP不是。
        32位序列号,以确保多线性数据集成。 32 检查序列号保证16位数,核实数据传输(安全)16位数(信号可能被篡改,以核实)--为避免篡改而重新传送包件。 FIN(近距离请求),16位数窗口大小(通过交通管理,防止电线接线速度和发送端的异常)
        在这里插入图片描述

      包括生存8次的TTL(64次), 下次跳跃:避免网络干扰。

      • (供(用于区分各种应用):21ftp、22 ssh、Telnet(远程登录)23)以红色字母掌握。
        在这里插入图片描述

      一.5 网络术语知识

      • 路径: 从源到目的地地址的路径 。
        路由器位于七层结构(网络层)的第三级,充当网络数据集接收器。
        (支助:可选择的表格和传送方式)

      路由和交换的区别:
      路由器和交换器之间的主要区别是,交换是在OSI参考模型的二级(数据链接层)上进行,而路由器则是在三级(即网络层)上进行,这取决于路由器如何使用各种控制信息传递移动信息并将其合并。

      • 路由表
        是一个电子表格或数据库,保存在路由器或网络计算机中。
      • 缺失路径条目: 发送到基于缺失路径条目接口的下一个跳跃地址 。
      • 以太网开关是一种基于MAC地址识别的网络装置,它通过以太网数据框架完成传输,位于OSI网络参考模型(数据链接层)二楼。
      • 枢纽与枢纽之间的区别在于,枢纽可提供额外的港口服务,有时称为多按钮中继器。
      • DNS(域名系统)服务器首字母是基本的互联网服务,它允许绘制域名和IP地址,并允许在不学习IP 地址字符串提供 Domain Name System)的情况下更快地进入互联网。 服务器首字母是基本的互联网服务,允许绘制域名和IP 地址,并允许在不学习IP 地址字符串的情况下更快地进入互联网。 (由解析器和域名服务器组成)
      • 局域网(LAN):
        从地理上讲,覆盖范围限于相当孤立的局部范围。
        利用专门设计的传输介质和高效数据传输联网(10 MB/s10Gb/s)
        长期良好的通信可靠性
        局域网可支持若干传输介质。
      • 广域网:互联网等不同局域网中最大的远程计算机网络。
      • 例如,逻辑港口,又称TCP/IP港口,其港口号从0到65535不等,只有不到256个港口是共同港口,其中80个港口是网络服务,21个港口是FTP服务,等等。
      • MTU: 最大传输单位(MTU)通信通信是指通信协议的大小,该通信协议可能通过最大的数据包流动,该数据包通常与网络接口连接。
        运输、运输、运输、运输、运输、运输、运输、运输、运输、运输等若干协定如下:
        《捍卫民主阵线议定书》4352字节。
        以太网的 1500 字节
        PPOE (ADSL) 1492 字节;
        X.25 协议的576字节
        4470 字节点对点

      一.6. 重要访谈专题

      在这里插入图片描述

      一.六.1 TCP是如何建立连接的。 此外,还有更全面的调查。
      1.6.2 [TCP如何沟通]
      1.6.3 TCP 终止连接的方式
      一、六、幻灯片窗口到底是什么?
      控制错误和交通流量。
      在 TCP 中使用幻灯片窗口进行传输控制, 幻灯片窗口的大小表明仍然有许多缓冲区可供接收数据。 幻灯片窗口的大小决定了发送者应传输多少字节 。
      一、六、五的半价是多少?
      由于在完全终止状态下,客户从服务器收到请求,而服务器上的数据正在传送以关闭连接,客户向服务器发送的确认断开请求不会因使用完全关闭状态而再次返回服务器终端。 在这一点上,它必须是半闭合状态,在完全终止状态下,客户在服务器上的数据被传输以关闭连接时从服务器收到请求,客户向服务器发送的确认断开请求不会因使用完全关闭状态而再次返回服务器终端。 在这一点上,客户必须是半闭合状态。
      为确保数据的完整流动,应当为连接留出相当长的时间,但应当多长的时间?
      例如,客户连接到服务器,服务器向客户提供文件,客户收到确认数据后将确认数据发送到服务器Stentisexample,客户连接到服务器,服务器向客户提供文件,客户收到确认数据后将确认数据发送到服务器。
      在现阶段,服务器只需要不断传输文件数据,而客户将不知道何时获得数据,无法调用无限输入程序,因为这样做可能导致程序崩溃(不返回所谓的函数)。
      当数据传输完毕后, 文件结尾处的服务器端应给予 EOF 服务器端, 客户端将停止接收数据并向服务器提供确认数据。 关闭和关闭功能都可以将 EOF 数据发送给客户, 但是他们无法在使用关闭发送 EOF 后相互接收对方的传输, 所以使用关闭发送数据已经传输, 文件结尾处的服务器端应给予 EOF 服务器端, 客户端将停止接收数据并向服务器提供确认数据。 关闭和关闭功能都可以将 EOF 数据发送给客户, 但是他们无法在使用关闭发送 EOF 后接收对方的传输, 所以使用关闭 。
      1.6.6 两个局域网主机如何交流?
      沟通呢?
      一、六、7个互联网上的两个主机是如何相互连接的。
      一.6.8 如何识别互联网的唯一程序
      一.六.9 为什么TCP是一个可靠的连接? UDP不可信。
      十. 路由器和开关的区别
      11. 点对点和端对端

      二. 用插座编程

      Python是一个相当广泛的网络服务器编程语言的例子:https://ww.un.org/photos.com/I'm sorry、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs、cnblogs,http://python58.com/p/10426188.html。
      各种计算机通信需要IPC以及插座。
      两条连接线如下:套接字对,文件标题由两个缓冲区组成,以及双方之间的通信,可以是半封闭的,即不接受。

      在这里插入图片描述
      <font color=>站在TCP/UDP协议开发,SOCKET编程,建立文件描述符,对文件描述符进行操作。
      套接字程序主 API 函数 :
      int blind()
      int listen()
      int accept()
      合同() 中的客户端主动调用服务器
      ssize_t read()
      ssize_t write()
      ssize_t recv()
      ssize_t send()
      在矩形和传输函数的标记中输入 0。

      NB. 如果书写缓冲带满了, 写作也停止了, 没有数据的阅读可能会造成阻塞。 我不知道你在说什么。
      2.1.1 了解编订鱼仓的编目

      网络字节转换(第二部分)

      端口号的转换:
      大端和小端的概念
      大端,也称为高端字节序列、网络字节序列、储存在低层地址的高级别数据和储存在高层地址的低层数据,都是大端例子。
      低端字节序列、在低层地址保存的低层数据和在高层地址储存的高级别数据都是低端数据的例子。

      • 大目的和小目的的目的何在?

        (1) 如果有一个以上的字节,例如,att等字节。
        (2) 网络传输采用大端技术,如果机器使用小端,则需要大端转换。大小端转换的函数:

      函数h 表示主机主机, n 表示网络, s 表示短, I 表示长。

      手工计算转换结果:
      在这里插入图片描述

      将双字节序列转换为 IP 地址的 2.A 函数 。

      IP 地址转换函数 :
      IP 从十进制转换为十六进制字节

      在这里插入图片描述

      有2.3个主要结构通常用于套接字编程。

      IPv4 协议之前有许多网络编程能力, 并使用了袜子结构 。 要防患于未然, 袜子已经降级为( 省略 * ) 功能, 发送地址给函数, 不管是 sockaddr_ in 还是 sockaddr_ in 6, 由地址家庭决定, 然后迫使内部类型的函数转换为所需的地址类型 。
      在这里插入图片描述

      TCP通信编码过程。
      在这里插入图片描述

      2.4.1 套接字函数

      Socket () 建立网络通信端口, 如果成功, 则生成类似于 Open () 的文件描述, 允许程序在网络上接收和传输数据, 仿佛它是一个读/ writer 文件, 如果套接字 () 调用失败, 返回 1 。 对于 IPv4, 域参数为 AF_ INET。 对于 TCP 协议, 类型参数为 SOCK_ STREAM, 代表流向传输协议 。 对于 UDP 协议, 类型参数为 SOCK_ DG 。 对于 UDP 协议, 类型参数为 SOCK_ DG

      函数二. four.2

      服务器应用程序的网络地址和端口号通常是固定的, 当服务器知道服务器程序地址和端口号时, 客户端可以建立与服务器的连接, 因此服务器必须执行绑定以绑定固定的网络地址和端口号 。
      函数捆绑 () 将参数套接和 添加器捆绑在一起, 以便袜子、 用于网络通信的文档字符、 监听添加器提供的地址和端口号 。 如前所述, 结构套装* 是一个通用指针类型, 添加器参数对于袜子结构的许多协议来说确实可以接受, 这些协议长度不同, 所以需要第三个参数添加器来显示长度 。
      函数捆绑 () 将参数套接和 添加器捆绑在一起, 以便袜子、 用于网络通信的文档字符、 监听添加器提供的地址和端口号 。 如前所述, 结构套装* 是一个通用指针类型, 添加器参数对于袜子结构的许多协议来说确实可以接受, 这些协议长度不同, 所以需要第三个参数添加器来显示长度 。

      由于服务器可能有许多因特网卡片,每个卡片都可附在多个IP地址上,地址类型是AF_INET,地址类型是INADRE_ANY,这是一个代表任何本地IP地址的宏,因此所有IP地址都可以监听设置,直到与客户端建立连接,确定使用哪个IP地址,端口号为66。

      监听功能 2. four. 3

      通常情况下,服务器程序可以同时为多个客户服务,当客户开始连接时,服务器使用接受()返回和接受连接。如果大量客户开始连接,服务器无法处理,则尚未接受的客户处于连接等待状态,听 () 宣布袜子正在监听, 只允许一个后端客户进行连接准备, 任何其他连接请求都被忽略。 听 () 返回 0 成功, 1 失败 。

      接受函数 2.. four. four

      在三向握手完成后,服务器将接受()接受连接。如果服务器在没有客户端连接请求的情况下呼叫接受( ), 则在客户端连接之前封锁 。 Addr 是一个输出参数, 接受( ) 返回时客户端的地址和端口号。 Addrlen 是一个退出参数( 数值- 结果参数), 呼叫者为避免溢出问题而可以进入的缓冲区长度, 以及客户端地址结构的实际长度( 可能无法占据整个 Cal 可用的缓冲区 ) 。
      我们服务器的软件结构如下:

      由于 cliaddr_ len 是注销参数, 它应该在调用接受 () 之前重新估价 。 被接受的参数是听( ), 这是先前的监听文档描述符, 而被接受的返回值是另一个文件描述符 onnfd( 通信文件描述符), 然后通过与客户端的这种连接通信, 最终在不关闭监听器的情况下关闭 connfd 并返回 。 错误显示一个 - 1 。

      2.4.5 链接函数

      客户端必须调用连接( ) 来连接服务器, 以相同格式提供连接和绑定参数, 区别是绑定参数是他们自己的地址, 连接参数是另一个地址。 连接( ) 成功时返回 0, 失败时返回 1 。

      2. 5 Linux 上的执行 Cpp 代码

      C++ Linux下的程序制定和执行。
      维姆的命令已经配置 。

      2.6 服务器侧发展(Video 14)

      在这里插入图片描述

      • serve.c

      二.7 发展客户方案规划(Video 15)

      在这里插入图片描述

      在这里插入图片描述

      • client.c

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类