以太网

网络基础之网络协议

ⅰ亾dé卋堺 提交于 2020-02-06 23:36:07
一、 什么是互联网协议及为何要有互联网协议 1. 为计算机网络中进行数据交换而建立的规则、标准或约定的集合。英语是世界上所有人通信的统一标准(所以计算机语言也是英语,个人解释) 2. 因为协议是用来描述进程之间信息交换数据时的规则术语。在计算机网络中,两个相互通信的实体处在不同的地理位置,其上的两个进程相互通信,需要通过交换信息来协调它们的动作和达到同步,而信息的交换必须按照预先共同约定好的过程进行。所以必须要有网络协议. 二、 osi 五层模型 一、物理层 1、物理层由来:上面提到,孤立的计算机之间要想一起玩,就必须接入internet,言外之意就是计算机之间必须完成组网。 2、物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0 二、数据链路层 数据链路层由来:单纯的电信号0和1没有任何意义,必须规定电信号多少位一组,每组什么意思 数据链路层的功能:定义了电信号的分组方式 1、以太网协议: 早期的时候各个公司都有自己的分组方式,后来形成了统一的标准,即以太网协议ethernet ethernet规定 一组电信号构成一个数据包,叫做‘帧’ 每一数据帧分成:报头head和数据data两部分 head data head包含:(固定18个字节) 发送者/源地址,6个字节 接收者/目标地址,6个字节 数据类型,6个字节 data包含:(最短46字节

网络基础之网络协议

删除回忆录丶 提交于 2020-02-06 23:34:10
一.客户端/服务器架构 即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件C/S架构(web服务) 美好的愿望: 最常用的软件服务器是 Web 服务器。一台机器里放一些网页或 Web 应用程序,然后启动 服务。这样的服务器的任务就是接受客户的请求,把网页发给客户(如用户计算机上的浏览器),然 后等待下一个客户请求。这些服务启动后的目标就是“永远运行下去”。虽然它们不可能实现这样的 目标,但只要没有关机或硬件出错等外力干扰,它们就能运行非常长的一段时间。 生活中的C/S架构: 学校是S端,所有的学员是C端 饭店是S端,所有的食客是C端 互联网中处处是C/S架构(黄色网站是服务端,你的浏览器是客户端;腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看狗日的视频) C/S架构与socket的关系: 我们学习socket就是为了完成C/S架构的开发 二.网络通讯原理 2.1 互联网的本质就是一系列的网络协议 一台硬设有了操作系统,然后装上软件你就可以正常使用了,然而你也只能自己使用 像这样,每个人都拥有一台自己的机器,然而彼此孤立 如何能大家一起玩耍 2.2.osi七层协议 互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层 每层运行常见物理设备 2.3 tcp/ip五层模型讲解 我们将应用层,表示层,会话层并作应用层,从tcp

网络及数据在网络中传输所涉及到的协议们

不羁岁月 提交于 2020-02-05 09:11:00
网络 :几部计算机主机或网络打印机之类的接口设备,通过网线或者无线网络技术将其连接起来,使得数据可以通过网络介质(网线以及其他网卡等硬件)来传输的一种方式。 网络分类 :   1. 以太网 (Ethernet):局域网(local area network,LAN)使用的就是以太网     以太网络传输速度单位用的是Mbps,需要注意的是其中的b用的是bit而不是我们常用的byte,所以我们家中定宽带时的实际下载速度需要除以8才能够得到一般速度。     我们常见的网线就是用于传输以太网数据的,通过主机的网卡连接另一台主机的网卡或者集线器(Hub)【集线器* 注1 】     以太网的传输协议:CSMA/CD       以太网的传输关键是以太网卡(常简称网卡),每张网卡有一个“固定”的网卡号称为MAC地址(6bytes大小,是硬件地址标识),所以能够用于确定位置。       以太网内的机器间数据传输就是使用CSMA/CD协议来发送MAC数据帧的,MAC数据帧构成如下:        *其中的目标地址与源地址即是MAC地址     注1:集线器是网络共享介质设备,局域网络所有主机连接到他,当需要主机间通信时将数据发送到集线器,其再负者转发出去直到目标主机收到并接收数据。还有个叫交换机(Switch)的非共享介质设备也起类似作用,但是他们转发数据的原理不同

以太网物理层信号

和自甴很熟 提交于 2020-02-05 02:30:07
以太网物理层信号 作者:AirCity 2020.2.4 Aircity007@sina.com 本文所有权归作者Aircity所有 1 10Base-T 1M以太网采用曼彻斯特编码,简单讲就是从“+”跳变到“-”判为0,从“-”跳变到“+”判为0;由于不论0还是1,都有跳变,所以DC平衡,并且接收端很容易从跳变中恢复周期。 2 100Base-Tx 同时采用4B/5B编码和MLT-3编码(三电平编码)。100M以太网速率100Mbps,由于采用了4B/5B编码,速率应提升到125Mbps,但是由于由采用了MLT-3编码,这让百兆以太网的信号主频变成了31.25MHz。 3 MII接口 以太网PHY芯片与CPU之间通常用MII接口,MII接口有很多种类型。 RMII:有8根线,分别是TX_EN, TXD0,TXD1,RXD0,RXD1,CRS_DV,RX_ER,CLK 时钟:50MHz SRMII:有4跟线,分别是SYNC,TXD,TXD,CLK 时钟:125MHz 来源: CSDN 作者: AirCity123 链接: https://blog.csdn.net/AirCity123/article/details/104175489

ARP协议原理及验证

微笑、不失礼 提交于 2020-02-04 22:41:06
以太网是一种局域网 ,而现在大部分的局域网都是以太网,所以一般提及局域网都会默认为以太网。 arp ( address resolution protocol )称为 地址解析协议 ,工作在 数据链路层 。 在 以太网环境 中,数据传输 依赖于mac地址 ,而不是ip地址。arp的作用就是采用广播的形式将 ip解析成mac 地址。 arp的工作流程 arp请求 当a想要找到b的物理地址时,先查找arp缓存是否有b的mac,如果没有就会发送给一个arp请求,请求中包含了发送方a的mac和ip和b的ip,由于a不知道b的mac地址,所以a会在以太网中向所有主机进行广播。 arp响应 a对所有主机广播后,以太网里的每一台主机都会接收这个请求并验证,将arp请求的目标ip与自己匹配,如果和自己不一样就抛弃,如果是自己,就会以单播的方式将自己的mac发送给a。 arp相应后续 a收到了b发来的mac,会用b的ip和mac地址映射去更新arp缓存,一段时间后会被清除。当本地arp缓存中没有b的mac地址后,会继续重复上述操作。 实验验证 操作环境:kali+ubuntu虚拟机 第一步:kali中tcpdump捕获数据包 tcpdump -i eth0 -nn arp and host ubuntu_ip 第二步:kali中向ubunt发起一次ping命令 ping -c 1 ubuntu_ip

arm linux无线路由

被刻印的时光 ゝ 提交于 2020-02-02 15:24:44
一块arm开发板,带有以太网口,还有一个在京东上买的usbwifi模块,wifi模块在ubuntu上直接可以用,输入lsusb,发现其使用的wifi模块竟然是realtek的8192,于是想用这两个网口实现无线路由的转发功能,即板子的以太网接到局域网,以太网与wifi的wlan0直接存在一定转发规则,然后手机或者笔记本连上8192的AP即可上网。 实现这一功能稍微有些繁琐,需要移植和配置一些东西,这里只说一下步骤与注意细节,不再详细的去写过程。 1以太网部分 。我的板子文件系统是nfs的,挂到虚拟机192.168.1.248,板子以太网ip是192.168.1.100; 2AP部分 。先移植8192驱动,把固件放到指定位置,insmod 8192.ko,出现wlan0节点。ifconfig wlan 192.168.0.1 ,指定wlan0的ip地址。然后让8192作为AP,需要移植hostapd,配合配置文件,配置文件里主要是创建ap的一些参数,如ap名称、密码、加密方式等,然后运行hostapd,此时用手机扫描wifi出现 “rtwap”。 8192的hostapd在驱动源码里有 。   3ip分配与获取 。通过udhcpd与udhcpc实现,udhcpd一般运行在路由器端,负责分发ip,udhcpc运行与终端,负责获取ip,只有当路由器端运行了udhcpd

【网络原理】数据链路层

一个人想着一个人 提交于 2020-02-01 08:49:51
复习的笔记,如有错误欢迎指正 数据链路层,什么是数据链路呢,一条网线(物理线路)我们叫做一个链路,在上面加上相关的协议,就称他为一个数据链路。在数据链路上传输的基本单位我们称之为:帧 数据链路层的三个基本问题: 1、封装成帧:给数据部分加入帧头和帧尾,区分一个完整的数据帧 2、透明传输:如果真中间出现了SOH或者EOT这样的开始或结束符,就会收到一个错误的数据帧,为了解决这个问题,在数据中遇到他们的时候给他们加上转义字符: 3、差错控制:运用一些算法来对传送的数据帧内容进行检测,防止因噪声出现错误(CRC循环冗余校验) 数据链路中,不同的协议有不同的帧格式: 使用点对点信道的数据链路层:常见的PPP协议 就进行两点之间的通信 使用广播信道的数据链路层–以太网 :目前比较常用的,CSMA/CD协议,带冲突检测的载波侦听多路接入 计算机都连接到一根总线上,以此来进行相互之间的通信。两头是接着两个电阻,这样这五个计算机就可以相互进行通信,他是基于广播信号的,每次通信的时候要先发送广播,所有的计算机都能收到他要请求通信的消息,然后要与他通信的计算机给他回复,然后两人开始通信,其他的计算机不接受他们发送的数据 PPP协议: 7E字段代表的是帧头和帧尾,和上面说的类似,如果数据中出现了这个字段我们要对他加以区分:两种方法,一个用于同步,一个用于异步,同步就是以一个数据帧为为传输的基本单位

VC++实现ARP协议

喜夏-厌秋 提交于 2020-01-31 03:57:06
地址解析协议(Address Resolution Protocol,ARP)是在仅知道主机的IP地址时确 地址解析协议定其物理地址的一种协议。因IPv4和以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM( 异步传输模式)和FDDIIP(Fiber Distributed Data Interface 光纤分布式数据接口)网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。 1. 什么是ARP?   ARP (Address Resolution Protocol) 是个地址解析协议。最直白的说法是:在IP-以太网中,当一个上层协议要发包时,有了节点的IP地址,ARP就能提供该节点的MAC地址。   2. 为什么要有ARP?   OSI 模式把网络工作分为七层,彼此不直接打交道,只通过接口(layer interface). IP地址在第三层, MAC地址在第二层。协议在发送数据包时,得先封装第三层(IP地址),第二层(MAC地址)的报头, 但协议只知道目的节点的IP地址,不知道其MAC地址,又不能跨第二、三层,所以得用ARP的服务。   3. 什么是ARP   cache? ARP cache

RARP协议

穿精又带淫゛_ 提交于 2020-01-29 23:59:57
RARP协议 RARP–Reversed Address Resolution Protocol 官方定义在RFC903 ARP跟RARP的关系 RARP跟ARP的异同 这是用于以太网的ARP的请求应答分组的格式,图中以太网地址就是物理地址 RARP跟ARP都是请求广播,响应单播 RARP的请求应答分组跟ARP的形式上一样,不同之处如下 ARP的帧类型是0x0806 表示后面数据是ARP分组,RARP的帧类型是0x8035 操作码op ARP请求是1 ARP响应是2 RARP请求是3 RARP响应是4 RARP的请求响应过程 以用于以太网的RARP请求为例,假设A是发送方,B是响应方 请求过程 op设为3 发送端以太网地址是A的物理地址 发送端IP地址无定义 目的以太网地址也是A的物理地址 目的IP地址无定义 链路层广播 响应过程 op设为4 发送端以太网地址是B的物理地址 发送端IP地址是B的IP地址 目的以太网地址是A的物理地址,跟请求过程中的目的以太网地址保持一致 目的IP地址是分配给A的IP地址 链路层单播给A RARP的实现难点 一台RARP服务器一般为多个主机(网络上所有的无盘系统)提供硬件到IP地址的映射,该映射存储在磁盘文件中,系统内核一般不读取磁盘文件,所以需要用户写程序实现,而且不同的系统实现有所不同 一个网络中一般要有多个RARP服务器

基于STM32F107xx中以太网ETH实现LWIP功能

廉价感情. 提交于 2020-01-29 07:54:28
前言 在需要使用lwip以太网功能时,可以选择ST支持以太网互联型芯片,如107或105; 当然也可以选择103 + 网卡驱动芯片(如:ENC28J60、DM9000等); 该文章只介绍107芯片中以太网ETH模块的配置过程; ETH框图 STM32F107xx支持以太网模块的面纱就是这样,那么我们该如何配置里面的PHY、MAC和以太网专用的DMA以实现底层的配置呢?容许我慢慢道来。 1、网卡结构   网卡是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件。 由于其拥有MAC地址,因此属于OSI模型的第2层 。它使得用户可以通过电缆或无线相互连接。每一个网卡都有一个被称为MAC地址的独一无二的48位串行号,它被写在卡上的一块ROM中。 在网络上的每一个计算机都必须拥有一个独一无二的MAC地址 。没有任何两块被生产出来的网卡拥有同样的地址。这是因为电气电子工程师协会(IEEE)负责为网络接口控制器(网卡)销售商分配唯一的MAC地址。 以太网卡中数据链路层的芯片一般简称之为MAC控制器,物理层的芯片我们简称之为PHY。 1.1、MAC 802.3   该部分不是两言三语就可以说明白的,《STM32中文参考手册》中有详细的介绍;如果还不够喂饱您,那就自己找吃的;反正网卡没它不行; 1.2、PHY   PHY是物理接口收发器,它实现物理层。包括MII/GMII(介质独立接口)子层