> 백엔드 개발 > 파이썬 튜토리얼 > Python 기본 지식 1: 네트워크 통신 데이터 전송

Python 기본 지식 1: 네트워크 통신 데이터 전송

coldplay.xixi
풀어 주다: 2021-02-19 10:03:16
앞으로
2753명이 탐색했습니다.

Python 기본 지식 1: 네트워크 통신 데이터 전송

무료 학습 추천: python tutorial(동영상)

Python은 네트워크 통신 데이터 전송을 구현합니다(기본 지식(1))

  • 기본 지식 학습
    • 1. 동기식 및 비동기식
    • 2. 소켓이란
    • 3. 소켓 소켓의 분류
      • 1. 스트리밍 형식 소켓 SOCK_STREAM
      • 2 , 데이터그램 형식 Socket (Socket)는 IP 주소, 포트 주소
    • conclusion
    이지만 최근에 들어 왔습니다 이 분야에 대한 지식을 접하고 꽤 흥미로웠기 때문에 더 많은 사람들이 배울 수 있도록 연구하고 학습 결과를 여기에 기록했습니다. 상사에게 조언을 구할 수 있으면 좋을 것 같습니다! ! !
  • 기본 지식 학습

1. 동기식 및 비동기식

Synchronous는 전체 처리 프로세스가 순차적으로 실행되는 것을 의미합니다. 선형 실행 방법이므로 실행 프로세스를 교차할 수 없습니다. 일반적으로 사용자 로그인과 같이 시스템에 로그인하기 전에 사용자 확인이 필요한 강력한 프로세스가 있는 절차에 사용됩니다. (발신자는 하나를 보내고 수신자는 동기식으로 하나를 받습니다.)

    Asynchronous
  • 은 대신 호출된 메서드가 완전히 실행될 때까지 기다릴 필요가 없습니다. 다음 프로세스가 계속 실행됩니다. 병렬 처리 방법이므로 프로그램 실행이 완료될 때까지 기다릴 필요가 없습니다. 페이지 데이터 로드 프로세스와 같은 다른 작업을 수행할 수 있습니다. . (발신자는 데이터를 보내고 수신자는 자체 규칙에 따라 허용할 수 있는 버퍼 영역이 있습니다. 물론 발신자도 자체 규칙에 따라 데이터를 보낼 수도 있습니다. 둘은 비동기식입니다.)
    2. 소켓이란

  • socket
    의 원래 의미는 "소켓"입니다. 컴퓨터 통신 분야에서 소켓은 "소켓"으로 번역됩니다. . 소켓 규칙을 통해 컴퓨터 간에 네트워크 연결이 설정됩니다.

더 쉽게 이해하기 위해 소켓에 플러그를 꽂아 그리드에서 전원을 공급받습니다. 마찬가지로 원격 컴퓨터로 데이터를 전송하려면 다음이 필요합니다. 인터넷에 연결하고 소켓은 도구를 인터넷에 연결하는 데 사용됩니다.

  • Windows는 UNIX/Linux와 달리 소켓과 파일을 구분합니다. Windows는 소켓을 네트워크 연결로 취급하므로 일반 파일의 입출력을 위해서는 소켓용으로 특별히 고안된 데이터 전송 함수를 호출해야 합니다. 유효하지 않은.
  • 3. 소켓 소켓 분류
  • 주로 사용되는 두 가지 주요 소켓은 스트림 형식 소켓(SOCK_STREAM)과 데이터그램 형식 소켓(SOCK_DGRAM)입니다.
  • 1. 스트리밍 형식 소켓 SOCK_STREAM

    • 에는 다음과 같은 특징이 있습니다. 데이터는 전송 과정에서 사라지지 않습니다. 데이터 전송 및 수신은 비동기식입니다.


    • TCP 프로토콜(전송 제어 프로토콜)을 사용하여 데이터가 오류 없이 순서대로 도착하도록 제어합니다.
    • 고품질을 강조합니다.
    • 2. 데이터그램 형식 소켓(SOCK_DGRAM)

      컴퓨터는 데이터 전송만 하고 데이터 검증을 수행하지 않습니다. 전송 중에 데이터가 손상되거나 다른 컴퓨터에 도달하지 않으면 복구할 방법이 없습니다. . 즉, 데이터가 잘못된 경우 잘못된 것이므로 재전송할 수 없습니다. 데이터그램 소켓은 검증 작업이 적기 때문에 스트림 형식 소켓보다 전송 효율이 높습니다.
    • 다음과 같은 특징이 있습니다.
    • 전송 순서보다는 빠른 전송을 강조합니다. 전송된 데이터가 손실되거나 손상될 수 있습니다. 각 전송의 데이터 크기를 제한합니다.
      데이터그램 소켓은 라우팅을 위해 IP 프로토콜과 UDP 프로토콜(사용자 데이터그램 프로토콜)도 사용합니다.



    • 참고:
    • SOCK_DGRAM은 생각만큼 나쁘지 않으며 데이터가 자주 손실되지 않으며 데이터 오류는 작은 확률 이벤트일 뿐입니다. 4. IP 주소, MAC 주소, 포트 주소

      IP 주소:
    • 는 Internet Protocol Address의 약자로 "인터넷 프로토콜 주소"로 번역됩니다. 현재 대부분의 소프트웨어는 IPv4 주소를 사용하지만 특히 널리 사용되는 교육 네트워크에서는 IPv6도 허용되고 있습니다. IPV4의 경우 한 컴퓨터에 하나의 IP 주소를 갖는 것은 비현실적이므로 일반적으로 하나의 LAN에 하나의 IP 주소입니다. 라우터는 IP 주소를 기반으로 상대방의 위치를 ​​찾습니다. 라우터는 매우 효율적이고 지능적인 알고리즘을 갖추고 있으며 대상 LAN을 빠르게 찾습니다.
    • M\C 주소:
    • LAN 주소에는 상대방의 IP 주소 외에도 여러 컴퓨터의 MAC 주소가 포함됩니다. 데이터 패킷이 LAN에 도달하면 라우터/스위치는 데이터 패킷의 MAC 주소를 기반으로 해당 컴퓨터를 찾습니다
    • 포트 주소:
    • 컴퓨터는 여러 네트워크 서비스를 제공할 수 있습니다. 동시에 웹 서비스(웹사이트), FTP 서비스(파일 전송 서비스), SMTP 서비스(사서함 서비스) 등은 IP 주소와 MAC 주소만 가지고 있지만 컴퓨터는 데이터 패킷을 올바르게 수신할 수 없습니다. 처리를 위해 데이터 패킷을 어떤 네트워크 프로그램에 전달할지 모르므로 통신이 실패합니다. 다양한 네트워크 프로그램을 구별하기 위해 컴퓨터는 각 네트워크 프로그램에 고유한 포트 번호(포트 번호)를 할당합니다. 포트는 가상적이고 논리적인 개념입니다. 포트는 데이터가 들어오고 나가는 문으로 이해될 수 있습니다. 각 문에는 서로 다른 번호, 즉 포트 번호가 있습니다. 아래 사진과 같이:

      Python 기본 지식 1: 네트워크 통신 데이터 전송
      보충: 방금
    • 직렬 포트 및 포트 개념에 대해 살펴보았습니다. 직렬 포트는 I/O 통신 인터페이스이며 하드웨어 범주에 속합니다. 직렬 신호 통신을 사용하기 때문에 직렬 포트라고 합니다.
      포트(마이크로컨트롤러를 포함하지 않고 일반 PC 운영 체제를 의미함)는 네트워크 통신에서 다양한 통신 프로세스를 식별하는 데 사용되는 16비트 디지털 식별자일 뿐이며 운영 체제에 의해 정의됩니다. 운영체제. 포트의 개념

    결론

    저는 최근에 커뮤니케이션에 대해 많은 것을 배웠고, 이 글은 다음 몇 편의 글의 시작일 뿐입니다. 기본적인 준비 사항들 다음에는 관련 지식도 올릴 예정입니다. 마지막으로 참고하실 수 있는 여러 예시도 준비하겠습니다! ! !
    다음에 무슨 일이 일어날지 궁금하시다면 다음번에 내역을 들어보세요!

    무료 학습 권장사항: python 비디오 튜토리얼

위 내용은 Python 기본 지식 1: 네트워크 통신 데이터 전송의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿