`
cug017zq
  • 浏览: 13852 次
社区版块
存档分类
最新评论

面向连接的socket通信实现

 
阅读更多

面向连接的socket通信实现
2010年12月26日
  面向连接的socket通信实现
  
  
  
  /****************************************************
  * 文件名称:server.c
  * 简要描述:创建socket套接字,监听和接受客户端的请求
  ****************************************************/
  #include
  #include
  #include
  #include
  #include
  #include
  #include
  int main(int argc,char *argv[])
  {
  int server_sockfd, client_sockfd;//服务器套接字和连接套接字
  int server_len, client_len;
  struct sockaddr_in server_address;//服务器的信息
  struct sockaddr_in client_address;
  int i,byte;
  char char_recv,char_send;
  server_sockfd = socket(AF_INET, SOCK_STREAM, 0);//创建套接字
  server_address.sin_family = AF_INET;//服务器的信息
  server_address.sin_addr.s_addr = inet_addr("219.222.170.9");
  server_address.sin_port = 9734;
  server_len = sizeof(server_address);
  bind(server_sockfd, (struct sockaddr *)&server_address, server_len);//绑定套接字
  listen(server_sockfd, 5);//监听客户端请求,队列长度为5
  printf("server waiting for connect\n");
  client_len = sizeof(client_address);
  client_sockfd = accept(server_sockfd,(struct sockaddr *)&client_address, (socklen_t *)&client_len);//接受客户端的请求
  for(i=0,char_send='1';i
  #include
  #include
  #include
  #include
  #include
  #include
  int main(int argc,char *argv[])
  {
  int sockfd;
  int len;
  struct sockaddr_in address;   
  int result;
  int i,byte;
  char char_recv,char_send;
  if((sockfd = socket(AF_INET, SOCK_STREAM, 0))==-1)
  {
  perror("socket");
  exit(EXIT_FAILURE);
  }
  address.sin_family = AF_INET;//服务器的信息
  address.sin_addr.s_addr = inet_addr("219.222.170.9");
  address.sin_port = 9734;
  len = sizeof(address);
  if((result = connect(sockfd, (struct sockaddr *)&address, len))==-1)//申请连接服务器
  {
  perror("connect");
  exit(EXIT_FAILURE);
  }
  for(i=0,char_send='A';i<5;i++,char_send++)
  {
  if((byte=send(sockfd,&char_send,1,0))==-1)//发送数据
  {
  perror("send");
  exit(EXIT_FAILURE);
  }
  if((byte=recv(sockfd,&char_recv,1,0))==-1)//接受数据
  {
  perror("recv");
  exit(EXIT_FAILURE);
  }
  printf("receive from server %c\n",char_recv);
  }
  close(sockfd);
  exit(0);
  }
  $gcc server.c
分享到:
评论

相关推荐

    socket实现面向连接的TCP通信C++实现

    TCP 连接通信 socket C++ 实现

    利用socket实现客户端服务器之间简单通信

    利用socket实现客户端与服务器之间的简单通信,快速熟悉掌握三次握手与四次挥手。。。

    实验1:Socket通信实验

    1)设计程序,分别构建通信的两端:服务器端和客户端应用程序,套接字类型为面向连接的Socket,自己构建双方的应答模式,实现双方的数据的发送和接收(S发给C,C发给S)。 2)服务端程序能响应单个或任意多个客户端...

    利用socket实现双机通信

    1.利用 WinSock 来实现双机通信,理解 TCP 状态机图。 2.要求使用 WinSock 编程,采用其中的 TCP 面向连接方式,实现文本数据的交 换。

    C#利用Socket实现客户端之间直接通信

     设计程序,分别构建通信的两端:服务器端和客户端应用程序,套接字类型为面向连接的Socket,自己构建双方的应答模式,实现双方的数据的发送和接收(S发给C,C发给S)。 服务端程序能响应单个或任意多个客户端连接...

    socket通信

    socket通信分为两部分,一是服务器端,二是客户端,两者通过用户定义好的协议进行通讯。

    客户端与服务器端的socket通信

    介绍有关网络客户服务模型的 socket 通信应用,采用 delphi 中对 Windows API 进行了完美封装的套接字组件,设计了一个实现面向连接的通信方式的实际例子,说明两者是如何进行通信。

    利用Socket实现双机通信C++

    利用WinSock来实现双机通信,理解TCP状态机图。 要求使用WinSock编程,采用其中的TCP面向连接方式,实现文本数据的交换。

    socket实现客户端与服务器端通信

    很简单的程序,实现客户端和服务器端的收发信息,还有异常退出的处理

    Delphi 编写TCP/IP网络Socket通信程序

    TCP是面向连接的,通信双方保持一条通路,好比目前的电话线,使用telnet登陆BBS,用的就是TCP协议;UDP是无连接的,通信双方都不保持对方的状态,浏览器访问Internet时使用的HTTP协议就是基于UDP协议的。TCP和UDP...

    面向连接的双向通信程序源码

    基于TCP协议开发的通信程序,客户端和服务器端可实现双向通信

    java socket通信 一对多

    1)设计程序,分别构建通信的两端:服务器端和客户端应用程序,套接字类型为面向连接的Socket,自己构建双方的应答模式,实现双方的数据的发送和接收(S发给C,C发给S)。 2)服务端程序能响应单个或任意多个客户端...

    面向连接的socket网络编程

    一个Socket句柄就是这样一个三元组(半相关),定义Socket句柄时指定了通信的协议(地址簇、Socket类型和协议),而调用bind()则把指定的终结点(IP地址、端口号)绑定到Socket句柄。 要建立一个连接,必须知道对方...

    实验三Socket通信实验报告.doc

    实验三Socket通信实验报告 (1)实验目的和要求 1. 掌握VB、VC++、VS或JAVA等集成开发环境编写网络程序的方法; 2. 掌握客户/服务器(C/S)应用的工作方式; 3. 学习网络中进程之间通信的原理和实现方法; 4. 理解单...

    Socket通信实验(多用户)

    1)程序能分别构建通信的两端:服务器端和客户端应用程序,套接字类型为面向连接的Socket,自己构建双方的应答模式,实现双方的数据的发送和接收(S发给C,C发给S)。 2)服务端程序能响应单个或任意多个客户端连接...

    Socket通信实例代码

    如果是TCP,因为是面向连接的,所以要利用ListenO()方法来监听网络上是否有人给自己发东西;如果是UDP,因为是无连接的,所以来者不拒。 d. TCP情况下,如果监听到一个连接,就可以使用accept来接收这个连接,...

    利用Socket实现双机通信(计算机网络课程设计).doc

    流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Soc ket是一种无连接的Socket,对应于无连接的UDP服务应用。 最重要的是,socket 是面向客户/服务器模型而设计的,针对客户和服务器程序提供不同...

Global site tag (gtag.js) - Google Analytics