• 网络编程基础复习一


    一、软件开发的架构
    1、cs架构:客服端于服务器架构
    2、bs架构:浏览器于服务端架构
    二、网络基础
    1、网络的基本知识
    ip地址:互联网协议地址
    port:端口,设备于外界通讯交流的出口,ip+端口用于区分不同的服务。
    广播:1对所有的模式
    mac地址(物理地址):物理网卡的地址(12位16进制数,前6位表示厂商编号,后6位表示流水号)
    arp协议(查询IP地址和MAC地址的对应关系):地址解析协议,根据ip地址获取物理地址的一个tcp/ip协议;
    路由器(网关设备):连接因特网中局域网、广域网的设备。
    局域网(LAN):指某一区域内由多台计算机连成的计算机组。
    子网掩码:表示子网特征的一个参数。网络部份全为1,本机部分全为0;
    计算两个ip地址是否属于同一子网的方法:分别于子网掩码求与预算,结果相同,则属于同一子网。

    2、tcp协议与udp协议
    TCP协议(传输控制协议):全双工的通信方式。提供的是面向连接、可靠的字节流服务。建立可靠连接后传输数据。
    UDP协议(用户数据报协议):是一个简单的面向数据的运输层协议。UDP数据不可靠,并不能保证数据是否到达目的地。
    不需要建立连接,直接发送消息。
    TCP协议下的三次握手:(建立连接)
    1、客服端发送SYN(SEQ=x)报文给服务器端,进入SYN_SEND状态;
    2、服务端接受SYN报文,回应一个SYN(SEQ=y)ACK(ACK=x+1)报文,进入SYS_RECV状态;
    3、客服端接收到服务端的SYN报文,回应一个ACK(ACK=y+1)报文,进入established状态;
    三次握手完成,成功建立连接,可以开始数据传输了。

    官方解释:

            TCP协议下的四次挥手:(断开连接)
    1、某个应用程序首先调用了close,称该端执行‘主动关闭’(active close).该端的TCP于是发送一个FIN分节,
    表示数据发送完毕。
    2、接收到这个FIN的对端执行‘被动关闭’(pasive close),这个FIN由TCP确认。
    3、一段时间后,接受到这个文件的结束符的应用进程将调用close关闭它的套子节。这导致它的TCP也发送一个FIN.
    4、接受到这个最终的FIN的原发送端TCP(即将关闭的那一端)确认这个FIN[1].


    3、iso七层模型
    1、物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。

    2、数据链路层:定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问
    3、网络层:在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择.
    4、传输层:定义了一些传输数据的协议和端口号(WWW端口80等)
    5、会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路,主要在你的系统之间发起会话或者接受会话请求
    (设备之间需要互相认识可以是IP也可以是MAC或者是主机名)
    6、表示层:可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。
    7、应用层: 是最靠近用户的OSI层,这一层为用户的应用程序提供网络服务。
    应用层
      ·DHCP(动态主机分配协议)
      · DNS (域名解析)
      · FTP(File Transfer Protocol)文件传输协议
      · Gopher (英文原义:The Internet Gopher Protocol 中文释义:(RFC-1436)网际Gopher协议)
      · HTTP (Hypertext Transfer Protocol)超文本传输协议
      · IMAP4 (Internet Message Access Protocol 4) 即 Internet信息访问协议的第4版本
      · IRC (Internet Relay Chat )网络聊天协议
      · NNTP (Network News Transport Protocol)RFC-977)网络新闻传输协议
      · XMPP 可扩展消息处理现场协议
      · POP3 (Post Office Protocol 3)即邮局协议的第3个版本
      · SIP 信令控制协议
      · SMTP (Simple Mail Transfer Protocol)即简单邮件传输协议
      · SNMP (Simple Network Management Protocol,简单网络管理协议)
      · SSH (Secure Shell)安全外壳协议
      · TELNET 远程登录协议
      · RPC (Remote Procedure Call Protocol)(RFC-1831)远程过程调用协议
      · RTCP (RTP Control Protocol)RTP 控制协议
      · RTSP (Real Time Streaming Protocol)实时流传输协议
      · TLS (Transport Layer Security Protocol)安全传输层协议
      · SDP( Session Description Protocol)会话描述协议
      · SOAP (Simple Object Access Protocol)简单对象访问协议
      · GTP 通用数据传输平台
      · STUN (Simple Traversal of UDP over NATs,NAT 的UDP简单穿越)是一种网络协议
      · NTP (Network Time Protocol)网络校时协议
    传输层
      ·TCP(Transmission Control Protocol)传输控制协议
      · UDP (User Datagram Protocol)用户数据报协议
      · DCCP (Datagram Congestion Control Protocol)数据报拥塞控制协议
      · SCTP(STREAM CONTROL TRANSMISSION PROTOCOL)流控制传输协议
      · RTP(Real-time Transport Protocol或简写RTP)实时传送协议
      · RSVP (Resource ReSer Vation Protocol)资源预留协议
      · PPTP ( Point to Point Tunneling Protocol)点对点隧道协议
    网络层
    IP(IPv4 · IPv6) Internet Protocol(网络之间互连的协议)
    ARP : Address Resolution Protocol即地址解析协议,实现通过IP地址得知其物理地址。
    RARP :Reverse Address Resolution Protocol 反向地址转换协议允许局域网的物理机器从网关服务器的 ARP 表或者缓存上请求其 IP 地址。
    ICMP :(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。
    ICMPv6:
    IGMP :Internet 组管理协议(IGMP)是因特网协议家族中的一个组播协议,用于IP 主机向任一个直接相邻的路由器报告他们的组成员情况。
    RIP : 路由信息协议(RIP)是一种在网关与主机之间交换路由选择信息的标准。
    OSPF : (Open Shortest Path First开放式最短路径优先).
    BGP :(Border Gateway Protocol )边界网关协议,用来连接Internet上独立系统的路由选择协议
    IS-IS:(Intermediate System to Intermediate System Routing Protocol)中间系统到中间系统的路由选择协议.
    IPsec:“Internet 协议安全性”是一种开放标准的框架结构,通过使用加密的安全服务以确保在 Internet 协议 (IP) 网络上进行保密而安全的通讯。
    数据链路层
      802.11 · 802.16 · Wi-Fi · WiMAX · ATM · DTM · 令牌环 · 以太网 · FDDI · 帧中继 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN
    物理层
      以太网物理层 · 调制解调器 · PLC · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线
    各层中涉及的协议的简单解释:
  • 相关阅读:
    Assets Pipeline
    how to execute-shell-commands by ruby
    DFS---迷宫问题
    病毒感染监测
    RE数组开多大?
    C++如何输入含空格的字符串
    后缀算术表达式
    中缀表达式转化为后缀表达式
    基于两端操作的循环队列的实现---怎么判断队满??
    循环队列--忘记分配空间和如何用tag判断队空队满
  • 原文地址:https://www.cnblogs.com/angle6-liu/p/10144548.html
Copyright © 2020-2023  润新知