zoukankan      html  css  js  c++  java
  • 网络编程学习笔记

    1.应用程序之间的传输(网络通讯三要素:IP,端口,协议)

        1)找到IP

        2)数据要发送到指定的应用程序上。为了标识这些程序,比如,QQ发到QQ,而不是发到MSN。为了标识这些应用程序,所以给这些网络应用程序用数字进行标识,这个数字叫做“端口”。逻辑端口。web服务是80,tomcat默认是8080,mysql:3306。端口号都可以改。

        3)定义通讯规则。这个通讯规则称为协议,国际组织定义了通讯协议TCP/IP。

           比如玩CS游戏,自己用特有的协议,不用TCP/IP,则别人不能和我们联机,只有用相同协议的人才能联机。有些特殊的组织,为了安全起见,使用特定的协议进行内部通讯。

    (程序之间之所以能通讯,就是因为遵循同一个通讯协议。好比中国人之间能交流,就是因为大家都说中文。)

    2.网络模型

        1)左边是“OSI模型”,左边是“TCP/IP参考模型

    应用层                          应用层
    表示层
    会话层
    传输层(TCP/UDP)   传输层
    网络层(IP)   网际层
    数据链路层   主机至网络层
    物理层  

        2)在这个OSI七层模型中,每一层都为其上一层提供服务、并为其上一层提供一个访问接口或界面。

          比如QQ发送信息,由上往下,应用层到物理层,叫数据封包

        2.1.应用层,对信息进行封装http,ftp是应用层协议(data

        2.2.在表示层对应用层传来的信息进行封装((data))

        2.3.在会话层也对传来的信息进行封装(((data)))

        2.4.在传输层对信息进行封装,常见的有TCP协议或者UDP协议((((data))))

        2.5.在网络层,封装上IP地址,也即确定数据要发送到哪里(IP)(((((data)))))

        2.6.数据链路层确定用什么底层传输协议发送出去((((((data))))))

        2.7.物理层,比如网线,光纤,无线。把上面封装的数据发送到对方的物理层。对方进行数据拆包(即由物理层到应用层)

        2.8.每一层进行拆包,并往上传。直到传到应用层,根据端口号,把数据发给相应的应用程序 网络编程“传输层”(TCP/UDP)和“网际层(IP)JAVA Web在应用层(HTTP,FTP)

                                

                      

  • 相关阅读:
    django form表单验证
    Django messages框架
    pymysql 操作数据库
    python数据类型详解及列表字典集合推导式详解
    深入flask中的request
    修改sqlarchemy源码使其支持jdbc连接mysql
    深入理解Python中协程的应用机制: 使用纯Python来实现一个操作系统吧!!
    svg坐标转换
    近几年总结
    frp中的json模块
  • 原文地址:https://www.cnblogs.com/baron89/p/3061855.html
Copyright © 2011-2022 走看看