网络编程前言

计算机网络:

网络:将主机连起来就可以构成一个网络
互联网:将网络连起来就构成了互联网
IP地址:可以唯一标识一台主机
MAC:也可以唯一标识一台主机,是物理地址不可改变,虽然也可以标识,但是寻找起来就很困难,所以显然没有IP地址的灵活方便。
端口:可以标识主机中的进程,即就是应用程序的代号

OSI
七层模型:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层
五层/四层模型:应用层、传输层、网络层、数据链路层、(物理层)
协议:网络之间的一种约定/规定
应用层协议:HTTP、HTTPS、STMP(邮件)、DNS(域名解析)、FTP(文件传输)
传输层协议:TCP、UDP
网络层协议:IP、ICMP
数据链路层:ARP

知道了这些底层模型与协议之后我们先考虑一个问题:数据是如何从一个主机发送给另一个主机的?
数据从应用层向下传输:
到传输层后,首先会个给数据前加上协议头(比如tcp协议头),然后继续向下;到达网络层后,会将上层协议的头部连带着后面的数据整体看作一个数据,然后再给前面加上自己的头部,发送给下一层数据链路层
到达数据链路层后,会给传过来的这个数据整体前面加一个帧头,后面加一个帧尾,然后再转发出去。
数据转发是通过路由器去转发,再这个转发过程中这个数据还得上到网络层,因为网络层有IP协议,要通过IP地址来做到选路转发,根据网段选择(网段又是根据子网掩码来定的),这样就可以确定要发送的主机。
而到达要发送的主机后,从数据链路层开始向上处理,各层协议依次处理自己负责的头部尾部数据,最终将数据传到应用层。

然后我们知道数据在到达传输层时,被叫做报文(比如tcp报文),到达网络层后被叫做分组或包,到达数据链路层是被叫做帧。

简单的了解计算机网络的一些基础之后,我们就进入网络编程部分吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值