阶段3node js进阶032网络通信课程讲义.pptxVIP

  • 3
  • 0
  • 约4.44千字
  • 约 28页
  • 2021-11-20 发布于北京
  • 举报

阶段3node js进阶032网络通信课程讲义.pptx

Node.js 网络通信我们每天使用互联网,你是否想过,它是如何实现的?1. 课程介绍 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?1. 课程介绍基于 Node.js 的网络编程面向网络而生事件驱动、无阻塞、单线层Node 的 API 十分贴合网络,适合用来构建灵活的网络服务传统的Web平台大多数都需要专门的Web服务器作为容器,如 ASP、ASP.NET 需要 IIS 作为服务器,PHP 需要搭载 Apache 或 Nginx 环境等Node 可以非常方便的搭建网络服务器Node 提供了 net、dgram、http、https 4个模块,分别用于处理TCP、UDP、HTTP、HTTPS,适用于服务器端和客户端1. 课程介绍 Node.js 网络通信概述 构建 TCP 服务 构建 UDP 服务 构建 HTTP 服务 构建 WebSocket 服务 构建 HTTPS 服务目录Contents 了解网络通信相关概念 掌握使用 Node 构建 TCP 服务 掌握使用Node构建 UDP 服务 掌握使用 Node 构建 HTTP 服务掌握使用 Node 构建 WebSocket 服务 掌握使用 Node 构建 HTTPS 服务目标TARGETNode.js 网络通信网络通信概述网络七层模型1. Node.js 网络通信概述 网络五层模型1. Node.js 网络通信概述 层与协议每一层都是为了完成一种功能。为了实现这些功能,就需要大家都遵守共同的规则。大家都遵守的规则,就叫做协议(protocol)。互联网的每一层,都定义了很多协议。这些协议的总称,就叫做互联网协议(Internet Protocol Suite)。它们是互联网的核心,下面介绍每一层的功能,主要就是介绍每一层的主要协议。1. Node.js 网络通信概述 实体层电脑要组网,第一件事要干什么?当然是先把电脑连起来,可以用光缆、电缆、双绞线、无线电波等方式。这就叫做实体层,它就是把电脑连接起来的物理手段。它主要规定了网络的一些电气特性,作用是负责传送0和1的电信号。1. Node.js 网络通信概述 链接层单纯的0和1没有任何意义,必须规定解读方式:多少个电信号算一组?每个信号位有何意义?这就是链接层的功能,它在实体层的上方,确定了0和1的分组方式。1. Node.js 网络通信概述 链接层 – 以太网协议早期的时候,每家公司都有自己的电信号分组方式。逐渐地,一种叫做/wiki/%E4%BB%A5%E5%A4%AA%E7%BD%91/wiki/%E4%BB%A5%E5%A4%AA%E7%BD%91以太网/wiki/%E4%BB%A5%E5%A4%AA%E7%BD%91(Ethernet)的协议,占据了主导地位。以太网规定,一组电信号构成一个数据包,叫做帧(Frame)。每一帧分成两个部分:标头(Head)和数据(Data)。标头包含数据包的一些说明项,比如发送者、接受者、数据类型等等;数据则是数据包的具体内容。标头的长度,固定为18字节。数据的长度,最短为46字节,最长为1500字节。因此,整个帧最短为64字节,最长为1518字节。如果数据很长,就必须分割成多个帧进行发送。1. Node.js 网络通信概述 链接层 – MAC地址以太网数据包的标头,包含了发送者和接受者的信息。那么,发送者和接受者是如何标识呢?以太网规定,连入网络的所有设备,都必须具有网卡接口。数据包必须是从一块网卡,传送到另一块网卡。网卡的地址,就是数据包的发送地址和接收地址,这叫做MAC地址。1. Node.js 网络通信概述 链接层 – MAC地址每块网卡出厂的时候,都有一个全世界独一无二的MAC地址,长度是48个二进制位,通常用12个十六进制数表示。前6个十六进制数是厂商编号,后6个是该厂商的网卡流水号。有了MAC地址,就可以定位网卡和数据包的路径了。1. Node.js 网络通信概述 链接层 – 广播以太网数据包必须知道接收方的MAC地址,然后才能发送。首先,一块网卡怎么会知道另一块网卡的MAC地址?其次,就算有了MAC地址,系统怎样才能把数据包准确送到接收方?回答是以太网采用了一种很原始的方式,它不是把数据包准确送到接收方,而是向本网络内所有计算机发送,让每台计算机自己判断,是否为接收方。1. Node.js 网络通信概述 链接层 – 广播下图中,1号计算机向2号计算机发送一个数据包,同一个子网络的3号、4号、5号计算机都会收到这个包。它们读取这个包的标头,找到接收方的MAC地址,然后与自身的MAC地址相比较,如果两者相同,就接受这个包,做进一步处理,否则就丢弃这个包。这

文档评论(0)

1亿VIP精品文档

相关文档