当前位置: 首页 > news >正文

盐城做网站网站建设中请稍后再访问

盐城做网站,网站建设中请稍后再访问,网上做公司网站怎么做,表白网站制作系统源码作者 | 杰哥来源 | 杰哥的IT之旅你有想过吗#xff0c;在计算机网络当中#xff0c;数据是怎么样保证准确的从客户端发送到服务器端的#xff1f;中间涉及到了哪些理论#xff1f;01 客户端各层对数据的封装 java实现客户端的代码如下#xff1a;应用层会指定发送的服务器… 作者 | 杰哥来源 | 杰哥的IT之旅你有想过吗在计算机网络当中数据是怎么样保证准确的从客户端发送到服务器端的中间涉及到了哪些理论01 客户端各层对数据的封装 java实现客户端的代码如下应用层会指定发送的服务器的域名或者IP和端口号、以及要发送数据的内容传递给下一层传输层。传输层会在把应用层的报文当成自己的数据然后在前面拼接源端口号和目标端口号。其中源端口号就是客户端进程监听的端口号这个端口号一般不是固定的由操作系统在49152~65535范围内动态分配而目标端口号就是服务器接收数据的端口号一般是固定的在java代码中会指明。网络层会在传输层报文的基础上增加源IP和目标IP其中源IP就是本地网卡的IP地址目标IP是服务器的IP如果java代码中指定的是服务器的域名。那么首先需要通过DNS服务器将域名解析为IP域名解析的流程先查浏览器缓存-操作系统缓存-hosts文件-DNS服务器。数据链路层会在网络层的基础上增加源MAC地址和目标MAC地址其中源MAC地址就是本机网卡的MAC地址目标MAC地址是下一跳网络设备一般是交换机或路由器的MAC地址。注意目标MAC地址一般不是服务器的MAC地址如果客户端和服务器端在同一个网段那么目标MAC地址就是服务器的MAC地址因为客户端根本就无法得知服务器的MAC地址所以数据链路层采用下一跳的机制转递数据。那么怎么知道我的下一跳是谁呢下面就要请出ARP协议了ARP会发出一个广播告诉全世界“大家好我的IP地址是192.168.1.6我的MAC地址是00-50-56-C0-88-01”当同一个网段上的主机接收到ARP报文时会将这些信息添加自己的ARP缓冲区中的ARP列表同时将自己的IP地址和MAC地址回应给发送者这样每个位于同一个网段的主机都有整个网段内各个主机的IP与MAC地址的对应关系了。ARP列表的具体内容如下现在我的目标IP是192.168.3.6又不在这个ARP列表中那我怎么知道目标MAC地址要填啥呢填下一跳的MAC地址那么下一跳是又是谁呢这里就要请出路由表了。这个路由表是计算机的路由表而不是路由器的路由表这个路由表怎么来的呢根据/etc/sysconfig/network-scripts/ifcfg-eth0这个文件生成的。那么这个路由表怎么使用呢将目标IP与每一条记录的子网掩码Genmask一一按位与运算匹配度最高的Destination字段的IP就是下一跳的IP192.168.1.100也就是网关地址GATEWAY然后根据下一跳的IP去查ARP列表获得MAC地址00-30-F2-C1-2E-89。就这样客户端完成了对报文的组装交给物理层把数据从网卡发送出去发送到交换机A。02 交换机的交换 交换机收到客户端的报文后会进行解析只解析到数据链路层从中获得目标MAC地址然后查找ARP列表将报文转发给对应的网卡端口。交换机中的ARP列表根据目标MAC地址00-30-F2-C1-2E-89找到交换机的端口为Fa2/1这样交换机就会把报文从这个端口发送出去发送到路由器这里的端口是交换机的物理端口也就是插入网线的插口。03 路由器的路由 路由器可以连接两个不同的网络。路由器有一张路由表路由表可以通过网络工程师配置或者从其他路由器学习得到。路由器会解析报文到网络层然后发现目的IP是192.168.3.6从上面的路由表可以可以发现想要去192.168.3.0网段只需要将数据从FastEthernet0/1端口发送出去即可。另外路由器会将目标MAC地址替换成下一跳的MAC地址在这里是服务器的MAC地址如果中间还有其他路由器那么就是下一个路由器的MAC地址怎么替换呢还是查ARP表查询IP192.168.3.6的MAC地址为0030.A396.5DE7然后将目标MAC替换成这个然后将数据从FastEthernet0/1端口发送出去交给交换机B交换机B再将数据转发到服务器端。04 服务器端各层对数据的解析 服务器端收到数据后会逐层进行解析最后将真正的数据交应用程序进行处理至此一个数据从客户端到服务器端就完成了服务器端会发送响应报文给客户端大体的流程类似但是数据不一定是原路返回的因为中间经过的路由可能不同。05 扩展 查看域名对应的IP查看本机到服务器中间经过了多少个路由节点往期推荐如何跨 Namespace 同步 Secret 和 ConfigMap掘地三尺搞定 Redis 与 MySQL 数据一致性问题Redis 内存满了怎么办这样置才正确云原生的本手、妙手和俗手点分享点收藏点点赞点在看
http://www.yutouwan.com/news/386829/

相关文章:

  • 制作公司网站价格中山 网站建设一条龙
  • 泰州模板建站哪家好济南 规划 网站
  • 哪个网站做废旧好医院网站HTML5
  • python编程网页版新网站如何做seo推广
  • 做简单的网站链接响应式布局设计
  • 建设自己的网站seo网站推广平台
  • 培训网站推荐教育行业网站开发
  • 在线考试网站开发报价个人网站推广渠道 微博 贴吧
  • 做网站送的企业邮箱能用吗尚层装饰公司官网
  • 接网站开发外包烟台网站建设 制作 推广
  • 建站公司的工作流程视频直播第三方sdk
  • 自己做网站卖矿山设备深圳网页制作推广排名
  • 花都网站建设策划WordPress 多个分类目录
  • 济南手机建站哪家好医疗网站建设机构
  • 北京网络优化提升seo搜索排名
  • 洛阳网站的优化网站开发设计比赛
  • 鞍山新款网站制作哪家好网络营销计划书范例
  • 网站logo如何做链接品牌网站如何建设
  • aspnet做网站视频教程推广普通话的意义是什么
  • 高能建站系统怎么收费藁城网站建设
  • 想学网站搭建与推广学网络营销去哪个学校
  • 个人网站内容怎么写做企业网站要多长时间
  • 哈尔滨做网站费用报价网站兼容性问题
  • 企业网站管理系统模板wordpress数据库错误
  • 在什么网站做外贸wordpress文章太多
  • 网站开发网址上海企业服务公司
  • 洪梅东莞网站建设制作国外网站
  • 网站开发 ppt近期重大新闻事件
  • 山西建站推广wordpress添加账户余额
  • 专门找事做的网站免费申请电子邮箱注册