`
izuoyan
  • 浏览: 9221588 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Winsocket编程之TCP/IP体系结构

阅读更多
Winsocket编程之TCP/IP体系结构
一、TCP/IP 体系结构与特点

  1、TCP/IP体系结构

  TCP/IP协议实际上就是在物理网上的一组完整的网络协议。其中TCP是提供传输层服务,而IP则是提供网络层服务。TCP/IP包括以下协议:(结构如图1.1)

(图1.1)

  IP: 网间协议(Internet Protocol) 负责主机间数据的路由和网络上数据的存储。同时为ICMP,TCP,   UDP提供分组发送服务。用户进程通常不需要涉及这一层。

  ARP: 地址解析协议(Address Resolution Protocol)
   此协议将网络地址映射到硬件地址。

  RARP: 反向地址解析协议(Reverse Address Resolution Protocol)
   此协议将硬件地址映射到网络地址

  ICMP: 网间报文控制协议(Internet Control Message Protocol)
   此协议处理信关和主机的差错和传送控制。

  TCP: 传送控制协议(Transmission Control Protocol)
   这是一种提供给用户进程的可靠的全双工字节流面向连接的协议。它要为用户进程提供虚电路服务,并为数据可靠传输建立检查。(注:大多数网络用户程序使用TCP)

  UDP: 用户数据报协议(User Datagram Protocol)
   这是提供给用户进程的无连接协议,用于传送数据而不执行正确性检查。

  FTP: 文件传输协议(File Transfer Protocol)
   允许用户以文件操作的方式(文件的增、删、改、查、传送等)与另一主机相互通信。

  SMTP: 简单邮件传送协议(Simple Mail Transfer Protocol)
   SMTP协议为系统之间传送电子邮件。

  TELNET:终端协议(Telnet Terminal Procotol)
   允许用户以虚终端方式访问远程主机

  HTTP: 超文本传输协议(Hypertext Transfer Procotol)
  
  TFTP: 简单文件传输协议(Trivial File Transfer Protocol)

  2、TCP/IP特点

  TCP/IP协议的核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层,这三层通常是在操作系统内核中实现。因此用户一般不涉及。编程时,编程界面有两种形式:一、是由内核心直接提供的系统调用;二、使用以库函数方式提供的各种函数。前者为核内实现,后者为核外实现。用户服务要通过核外的应用程序才能实现,所以要使用套接字(socket)来实现。

  图1.2是TCP/IP协议核心与应用程序关系图。


(图1.2)

  二、专用术语

  1、套接字

  套接字是网络的基本构件。它是可以被命名和寻址的通信端点,使用中的每一个套接字都有其类型和一个与之相连听进程。套接字存在通信区域(通信区域又称地址簇)中。套接字只与同一区域中的套接字交换数据(跨区域时,需要执行某和转换进程才能实现)。WINDOWS 中的套接字只支持一个域——网际域。套接字具有类型。

  WINDOWS SOCKET 1.1 版本支持两种套接字:流套接字(SOCK_STREAM)和数据报套接字(SOCK_DGRAM)

  2、WINDOWS SOCKETS 实现

  一个WINDOWS SOCKETS 实现是指实现了WINDOWS SOCKETS规范所描述的全部功能的一套软件。一般通过DLL文件来实现

  3、阻塞处理例程

  阻塞处理例程(blocking hook,阻塞钩子)是WINDOWS SOCKETS实现为了支持阻塞套接字函数调用而提供的一种机制。

  4、多址广播(multicast,多点传送或组播)

  是一种一对多的传输方式,传输发起者通过一次传输就将信息传送到一组接收者,与单点传送
(unicast)和广播(Broadcast)相对应。


分享到:
评论

相关推荐

    PB9+TCP/ip通讯服务利用winSocket的例子(简单,测试通过)

    标题 "PB9+TCP/ip通讯服务利用winSocket的例子(简单,测试通过)" 指的是一个使用PowerBuilder 9(PB9)编程语言,并结合Windows Socket API(通常称为winSocket)实现TCP/IP通信的示例项目。这个项目已经过测试并确认...

    winsock编程.chm

    winsock编程chm格式 Winsocket编程之TCP/IP体系结构 [文章导读] TCP/IP协议实际上就是在物理网上的一组完整的网络协议......

    tcp/ip winsocket udp 资料一应俱全,实例相辅相成

    总的来说,这个压缩包提供了一个全面的学习资源,包括理论知识和实际代码示例,对于想要深入理解和实践TCP/IP、Winsocket以及UDP编程的人来说是非常宝贵的。通过阅读和研究这些资料,开发者可以掌握网络通信的基本...

    winSocket编程之TCP聊天小工具

    总结来说,"winSocket编程之TCP聊天小工具"涉及到的技术点包括TCP连接管理、WinSocket API的使用、字符串处理、好友列表维护、服务器中转以及心跳机制等。这个项目不仅有助于理解网络通信的基本原理,也是提升C++...

    基于TCP/IP协议的多线程聊天程序

    总的来说,基于TCP/IP协议的多线程聊天程序涉及网络通信基础、多线程编程技巧、WINSOCKET接口使用,以及TCP连接管理和数据交换策略。通过这样的程序设计,可以构建出稳定、高效的网络聊天环境。

    winsocket网络编程PPT

    **TCP/IP的体系结构** TCP/IP(Transmission Control Protocol/Internet Protocol)传输控制协议/互联网协议是实际应用最广泛的网络协议栈。它简化了OSI模型,主要由4层构成:网络接口层、互联网层、传输层和应用层...

    PB Winsocket完整实例

    Winsocket是Windows操作系统提供的一个应用程序接口(API),用于实现TCP/IP协议,使得PB应用能够进行网络数据的发送和接收。 PowerBuilder是一款强大的面向对象的开发工具,特别适合于构建企业级的数据库应用。而...

    WinSocket网络编程

    WinSocket网络编程是基于TCP/IP协议族进行网络通信的一种编程接口,主要应用于Windows操作系统环境。TCP/IP协议族是一个多层次的协议集合,它包括传输层、网络层、链路层等多个层次,每个层次都有相应的协议负责不同...

    winsocket编程实现简单 server端和client端

    2. **创建套接字**:使用`socket`函数创建一个套接字,指定其类型(TCP或UDP)、协议(如TCP/IP)以及地址族(如AF_INET代表IPv4)。 3. **服务器端绑定和监听**:Server端使用`bind`函数将套接字与特定的IP地址和...

    winsocket -BSD socket 入门讲义

    在IT领域,网络编程是不可或缺的一部分,而Winsock(Windows Socket)和BSD Socket是其中两种常见的API,用于实现跨平台的TCP/IP网络通信。本讲义主要围绕这两者的基础知识展开,帮助初学者理解网络编程的基本概念。...

    winsocket编程获得本机IP地址和计算机名称

    在IT领域,网络通信是不可或缺的一部分,而Winsock(Windows Sockets)是Windows操作系统中实现TCP/IP协议族接口的一种方式。本主题将深入探讨如何利用Winsock编程来获取本机的IP地址和计算机名称,这对于开发涉及...

    VC++ winsocket编程,局域网聊天室

    3. **地址结构**: 使用`sockaddr_in`结构体定义服务器或客户端的网络地址,包括IP地址和端口号。 4. **绑定**: 对于服务器端,调用`bind()`函数将套接字与特定的本地地址和端口关联。 5. **监听与接受**: 服务器端...

    winSocket编程源码

    Socket可以运行在各种使用TCP/IP协议作为通讯协议的网络上,它是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。网络的 Socket数据传输是一种特殊的I/O,Socket也...

    WinSocketCommunication_TCP-IP.rar

    本文将深入探讨如何使用C#编程语言,结合WinSocket API实现基于TCP/IP协议的服务器与客户端通信。我们将分析TCP/IP通信模型,了解C#中的Socket类,并通过具体的示例代码展示如何创建TCP服务器和客户端。 TCP/IP...

    winsocket编程几种模式

    本文将深入解析Winsocket编程中涉及的两种基本I/O操作模式:阻塞模式与非阻塞模式,并进一步探讨五种I/O模型,包括选择模型(Select)、异步选择模型(WSAAsyncSelect)、事件选择模型(WSAEventSelect)、重叠I/O...

    WinSocket编程实例

    通过学习和分析这个实例,开发者可以更好地理解如何将网络通信功能整合到Windows应用程序中,这对于开发基于TCP/IP的聊天软件、文件传输工具或其他需要网络交互的应用来说是非常有价值的。 总之,WinSocket结合MFC...

    WinSocket编程网页资料介绍

    通过WinSocket API,程序员可以创建能够处理TCP/IP协议栈的应用程序,包括TCP(传输控制协议)和UDP(用户数据报协议)等。 2. 数据结构:WinSocket编程涉及的主要数据结构有SOCKET,它是操作网络连接的句柄;...

    winsocket编程c++实现

    在IT领域,Winsock(Windows Socket)编程是用于在Windows操作系统上实现TCP/IP协议栈的接口,它允许程序员创建网络应用程序。本主题将深入探讨如何使用C++进行Winsocket编程,尤其是在构建基于对话框的Windows应用...

    WinSocket_TCP.rar_tcp vc_winsocket TCP

    在VC++中,WinSocket API提供了与TCP/IP协议族交互的接口。开发者可以通过调用Winsock库中的函数,实现创建套接字、绑定、监听、接受连接和发送/接收数据等一系列操作。在本项目中,我们可能看到以下关键步骤的实现...

Global site tag (gtag.js) - Google Analytics