11月17日笔记网络编程1_基础知识

0.网络通信
    通信/通讯的需要具备的两个基本条件:
        1.物理媒介  物理层面
        2.协议         软件层面
                网络协议


1.网络协议层次模型
    层次:把不同的功能封装成不同的功能模块 为什么叫层次

    OSI七层模型
       应用层 表示层 会话层  传输层  网络层  数据链路层 物理层

    TCP/IP四层模型         应用层   传输层  网络层  设备驱动和硬件
        应用层
            应用协议
                QQ协议
                ftp
                http
                DNS
                BT
                ....
        传输层        TCP   UDP
            解决数据如何传输的问题
            协议 TCP  UDP
            TCP:(Transport Control Protocol)传输层控制协议
                面向连接的传输层协议 它提供高可靠性的通信
                (即数据无误 数据无丢失 数据无失序 数据无重复到达)的通信
                =》重发机制
                建立连接
                三次握手 四次挥手
                “面向连接”
            
            UDP: User Datagram Protocol 用户数据报协议
                它是一种不可靠的无连接协议,在数据发送前因为
                不需要进行连接 所以可以进行高效率的数据传输

                “实时应用”

        网络层
              数据要发给谁
            IP  <------ IP地址就是网卡的逻辑编号
            ICMP
            IGMP
        
        设备驱动和硬件
            硬件
                网卡
                网线
            MAC 协议 : mac地址(网卡的物理地址 48bits)


2.网络数据是如何传输的?
    分层传输
        数据进行封装
        拆包


3.教你如何做网吧老板
    路由器 主要是路由 
        选择自己的数据包该发给谁
    网关 
        两个及以上的网络的时候 决定数据要不要发出去
    
    交换机
        1.扩展网口
        2.增强信号

    猫 modern 调制解调器
        将光纤信号进行解调


4.互联网地址(IP)        网段号 以及 主机号
    互联网上的每个接口(网卡)都必须有一个唯一internet地址(IP地址)
    IP地址是协议上的一个逻辑地址,进行网络通信时,
    用这个Ip地址唯一标识一台主机(一个网卡)
        Ipv4: 32bits
        ipv6:64bits

    IPV4地址有32个bit 那么怎么区分呢?
    固定式电话  区号 + 电话号码
    网络一样
    网段号 以及 主机号
        网段号:用来标识某个网段
            在ip地址连续的高位
        主机号:用来标识特定网段中的特定主机的

    怎么标识IPV4中32bit的IP地址, 点分式字符串
        每8个bits一个数字 中间用‘.’来分隔的字符串
    1111 1111 1111 1111 0101 1010 1001 0011-》不是给人看的,给机器识别的

        192.168.31.3
    
    IP地址分类:


                                        ip地址范围                  私有地址范围
 A   0网段号(7bit)主机号(24bits)  0.0.0.0~127.255.255.255    10.0.0.0~10.255.255.255
    
B   10网段号(14bit)主机号(16bit) 128.0.0.0~191.255.255.255 172.16.0.0~172.31.255.255

C   110网段号(21bit)主机号(8bit) 192.0.0.0~223.255.255.255 192.168.0.0~192.168.255.255

D   1110多播组组号(28bits)       224.0.0.0~239.255.255.255

E   11110(留待后用)              240.0.0.0~247.255.255.255


    在设置IP时 我们还可以指定这个地址的那些bit是网段号,那些比特是主机号
    192.168.31.xxx

    怎么设置呢?
    netmask(子网掩码):
        就是用来指定一个Ip地址中那些bits是网段号,那些比特是主机号
        netmask为1的bit是网段号 为0比特是主机号
        如
            netmask 255.255.255.0
                高三字节是网段号 低三字节是主机号
                192.168.31.3
                192.168.2.5 这两个IP不在一个网段

            netmask  255.255.126.0 这个子网掩码合法吗?
            1111 1111 1111 1111 0
                        非法的 
            netmask  255.255.252.0 这个子网掩码合法吗?
                        合法
            
            ifconfig eth0 192.168.31.3 netmask 255.255.255.0 up
    
    ip地址用来唯一标识网络上面的一台主机的
    但问题是 我电脑又不是只有一个要上网的程序
    我拿到的数据包 是哪个程序的数据呢?


5.端口号        IP地址+传输层协议(TCP/UDP)+端口号
    TCP和UDP采用16bits的端口号来标识应用程序
    TCP和UDP的端口号是独立的
    从传输层的角度来说 我们应用分两类
    TCP应用和UDP应用

    =》一个主机上的网络程序的数据发给谁 由 IP地址+传输层协议(TCP/UDP)+端口号 确定的

    端口号IANA管理
        1-1023   已经约定好给那些程序/服务用的
            ftp 21
            http 80
            .....
        注册端口 1024~49151
        动态或私有端口 49152~65535


6.网络字节序
    大端模式与小端模式
    大端模式 :高地址存低字节 低地址存高字节
    小端模式 :低地址存低字节 高地址存高字节

 



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值