[Introduction à la programmation réseau] qu'est - ce que IP, port, TCP et socket?

Zsyl 2021-11-25 17:48:27
introduction la programmation seau qu

IP Description de l'adresse

Objectifs d'apprentissage

  • Capable de direIPRôle de l'adresse

1. IP Le concept d'adresse

IP L'adresse est Identifie une adresse pour les appareils du réseau , Comme l'adresse de la famille dans la vraie vie .

Schéma de l'appareil dans le réseau :

Insérer la description de l'image ici

2. IP Représentation de l'adresse

Insérer la description de l'image ici

Dis - le. Ming:

  • IP Classes de radiodiffusion et de multidiffusion: IPv4 Et IPv6

  • IPv4 Est actuellement utilisé ipAdresse

  • IPv6 Est destiné à une utilisation future ipAdresse

  • IPv4 Est composé de décimales pointillées

  • IPv6 Est composé de deux points hexadécimaux

IP Rôle de l'adresse

IP La fonction de l'adresse est Identifiant le seul périphérique du réseau ,C'est - à - dire à traversIPL'adresse peut trouver un appareil sur le réseau.

IP Effet de l'adresse :

Insérer la description de l'image ici

3. Voir IP Adresse

  • Linux Et mac OS Utiliser ifconfig Cette commande
  • Windows Utiliser ipconfig Cette commande

Description:

ifconfig Et ipconfig Voir les informations de la carte réseau , Les informations de l'adaptateur réseau comprennent le IPAdresse

Insérer la description de l'image ici

Description:

  • 192.168.1.107 Est l'appareil sur le réseau IPAdresse
  • 127.0.0.1Indique l'adresse locale,Conseils: Vous pouvez utiliser cette adresse si vous communiquez avec votre ordinateur .
  • 127.0.0.1 Le nom de domaine correspondant à cette adresse est localhost , Le nom de domaine est ip Alias de l'adresse, Un nom de domaine peut être utilisé pour résoudre un ipAdresse.

4. Vérifiez que le réseau fonctionne correctement

  • Vérifier si le réseau fonctionne correctement ping Les ordres

Vérifier si le réseau fonctionne correctement

Insérer la description de l'image ici

Dis - le. Ming:

  • ping www.baidu.com Vérifier l'accès au réseau public
  • ping Du réseau local actuel ipAdresse Vérifiez si vous êtes dans le même réseau local
  • ping 127.0.0.1 Vérifier si la carte réseau locale est normale

5. Résumé

  • IP L'adresse sert à identifier le seul appareil du réseau.
  • IP La représentation de l'adresse est divisée en : IPv4 Et IPv6
  • Voir les informations de la carte réseau:ifconfig
  • Vérifiez le réseau: ping

Description du port et du numéro de port

Objectifs d'apprentissage

  • Capacité de dire ce que font les ports et les numéros de port

1. Penser aux problèmes

La communication de données entre feiqiu sur différents ordinateurs , Comment s'assure - t - il de donner les données à feiqiu plutôt qu'à d'autres logiciels ?

En fait..., Il y a un port pour chaque programme Réseau en cours d'exécution , Vous souhaitez envoyer des données au programme correspondant , Trouver le port correspondant .

Diagramme de port :

Insérer la description de l'image ici

2. Qu'est - ce qu'un port

Le port est le canal de transmission des données , Comme une porte de classe , Est le seul moyen de transmission de données .

Comment trouver exactement le port correspondant? ?

En fait..., Chaque port aura un numéro de port correspondant , C'est comme si chaque porte de classe avait un numéro de porte. , Pour trouver le port à travers le numéro de port .

Diagramme des numéros de port :

Insérer la description de l'image ici

3. Quel numéro de port?

Le système d'exploitation gère tous ces ports , Les ports sont numérotés ,C'est le numéro de port., Fin Le slogan est un nombre. , C'est comme un numéro de porte dans notre vraie vie. ,

Le numéro de port a 65536- Oui..

Donc le processus de communication des données entre le vol d'automne final est comme ça , OK. Oui.ip L'adresse a trouvé le périphérique correspondant , Trouver le port correspondant par numéro de port , Les données sont ensuite transmises à l'application via le port .

Organigramme final du processus de communication :

Insérer la description de l'image ici

4. La relation entre le port et le numéro de port

Le numéro de port identifie un port unique .

5. Classification des numéros de port

  • Numéro de port bien connu
  • Numéro de port dynamique

Numéro de port bien connu:

Un numéro de port bien connu est Numéro de port bien connu ,La gamme va de0À1023.

  • Ces numéros de port sont généralement attribués de façon fixe à certains services,Par exemple,21Port assigné àFTP(Protocole de transfert de fichiers)Services,25Port assigné àSMTP(Protocole de transfert de courrier simple)Services,80Port assigné àHTTPServices.

Numéro de port dynamique :

Programmeur général Les applications de développement utilisent des numéros de port appelés numéros de port dynamiques , La plage est de1024À65535.

  • Si le programme développé par le programmeur n'a pas de numéro de port défini , Le système d'exploitation génère au hasard un numéro de port dynamique à l'intérieur de cette plage pour l'application en développement .
  • Lorsqu'un programme est lancé, il a un numéro de port par défaut , Quand ce programme sort , Le numéro de port utilisé sera libéré .

6. Résumé

  • La fonction du port est Fournir un canal pour le transfert de données à l'application en cours d'exécution .
  • La fonction du numéro de port est Utilisé pour différencier et gérer différents ports , Un port unique peut être trouvé par le numéro de port .
  • Les numéros de port peuvent être divisés en deux catégories : Numéro de port bien connu Et Numéro de port dynamique
    • La plage des numéros de port bien connus est 0À1023
    • La plage des numéros de port dynamiques est 1024À65535

TCP Introduction

Objectifs d'apprentissage

  • Capable de direTCP Caractéristiques

1. Processus de communication entre les applications réseau

On a étudié avant IP Adresse et numéro de port,Adoption IP L'adresse peut trouver le périphérique correspondant , Puis trouvez le port correspondant à travers le numéro de port , Les données sont ensuite transmises à l'application via le port , Attention ici., Les données ne peuvent pas être envoyées au hasard , Vous devez également sélectionner un Protocole de transmission correspondant avant de l'envoyer , Assurer la communication des données entre les programmes conformément aux règles de transmission spécifiées , Et c'est le Protocole que nous avons appris aujourd'hui TCP.

2. TCP Le concept de

TCP L'orthographe anglaise de (Transmission Control Protocol)Abréviations Passe Protocole de contrôle des entrées ,C'est une sorte de Face à la connexion、Fiable、Protocole de communication de la couche transport basé sur le flux d'octets.

Schéma orienté connexion :

Insérer la description de l'image ici

TCP Procédure de communication :

1. Créer une connexion
2. Transmission des données
3. Fermer la connexion

Dis - le. Ming:

TCP Le modèle de communication est équivalent à ’Appelle’,Avant le début de la communication, Assurez - vous d'établir une connexion ,Pour envoyer des données, Fermer la connexion à la fin de la communication .

Insérer la description de l'image ici

3. TCP Caractéristiques

1. Face à la connexion

  • Les deux parties à la communication doivent établir une connexion avant de pouvoir transmettre des données ,Une fois le transfert de données terminé, Les deux parties doivent déconnecter cette Connexion , Pour libérer les ressources du système .

2. Transmission fiable

  • TCP Adopter un mécanisme de réponse à la transmission
  • Délai de retransmission
  • Vérification des erreurs
  • Contrôle du débit et gestion de la congestion

4. Résumé

TCP C'est un Calme - toi. Allez、Protocole de transmission fiable, Souvent utilisé pour transmettre des données avec précision ,Par exemple,: Téléchargement de fichiers, Navigateur en ligne .

Socket Introduction

Objectifs d'apprentissage

  • Capable de dire socket Le rôle de

1. Penser aux problèmes

Jusqu'à présent, nous avons appris ip Adresse, numéro de port et tcp Protocole de transmission, Pour garantir l'intégrité et la fiabilité des données, nous utilisons tcp Protocole de transmission pour la transmission de données , Nous avons besoin d'utiliser ip Adresse, Pour différencier une application d'un port pour recevoir des données, nous devons utiliser un numéro de port , Comment les données de communication sont - elles transmises?

Utiliser socket Pour finir.

2. socket Le concept de

socket (Abréviations Socket) - Oui. Un outil de communication entre les processus , Comme dans la vraie vie. Insérer Siège, Tous les appareils ménagers doivent fonctionner à partir d'une prise , La communication réseau entre les processus doit être basée sur ceci socket.

Schéma de prise :
Insérer la description de l'image ici

socket Tableau des effets:

Insérer la description de l'image ici

3. socket Le rôle de

Responsable Transfert de données réseau entre processus , Comme un porteur de données .

4. socket Utiliser le scénario

Sans exagérer,Suivez - moi. Des applications ou des logiciels liés au réseau sont utilisés pour socket.

Insérer la description de l'image ici

5. Résumé

Entre les processus Transmission des données du réseau Peut passer socket Pour finir,socket Est un outil de communication de données réseau entre les processus .


Allez!

Merci beaucoup.!

Un effort.!

版权声明
本文为[Zsyl]所创,转载请带上原文链接,感谢
https://javamana.com/2021/11/20211125174627525t.html

  1. La distribution Linux d'Amazon est maintenant entièrement basée sur Fedora
  2. org.springframework.web.bind.MissingServletRequestParameterException
  3. Built in constraints and functions of MySQL Foundation (2)
  4. Basic operation of MySQL Foundation (I)
  5. Introduction to Java zero foundation 3: Java data types
  6. 从零开始搭建EasyDarwin环境——Linux系统开发环境搭建Golang
  7. Redis source Concise Analysis 02 - SDS String
  8. Construire l'environnement easydarwin à partir de zéro - - construire l'environnement de développement du système Linux golang
  9. javaweb代码是正确的,但是第一行代码就报错了
  10. **** | Java | 后端开挂:3行代码写出8个接口
  11. Java || 看了大二学长写的代码,我竟开始默默的模仿了。。。
  12. Java | 手把手教你实现一个抽奖系统(Java版)
  13. Java | Manuel pour vous apprendre à mettre en œuvre un système de loterie (version Java)
  14. Java | | après avoir lu le Code que j'ai écrit en deuxième année, j'ai commencé à imiter silencieusement...
  15. Java | back - end Pending: 3 - line Code write 8 Interfaces
  16. Le Code Web Java est correct, mais la première ligne de code est incorrecte
  17. Android网络编程之Http通信
  18. Android網絡編程之Http通信
  19. Http communication for Android Network Programming
  20. 数据结构实验八 领会图的两种主要储存结构和图的基本运算算法设计
  21. Hibernate数据校验简介
  22. The story of spring
  23. Il a dépensé 270 000 yuans pour soulever Xiaopeng p7 et a parcouru 3 627 km. Le propriétaire du véhicule a partagé 6 avantages et inconvénients.
  24. 阿里蚂蚁花呗团队面试题:spring+分布式+jvm+session+redis
  25. 【Java入门100例】14.字符串排序——compareTo()
  26. 【Java入门100例】13.修改文件扩展名——字符串替换
  27. Leetcode 79. Word Search [C + + / java detailed problem]
  28. Introduction à la vérification des données hibernantes
  29. Expérience de la structure des données
  30. Spring cloud gateway practice 2: more routing configuration methods
  31. Java network programming - summary overview
  32. 基于语法树的 Java 代码自动化插桩
  33. 云原生 Spring Boot 应用配置 Prometheus + Grafana 监控(保姆级)
  34. Spring cloud gateway practice 2: more routing configuration methods
  35. Jenkins file one line of code to deploy. Net program to k8s
  36. Java network programming - summary overview
  37. Cloud Native Spring Boot application configuration Prometheus + grafana Monitoring (baby - sitter)
  38. Insertion automatique de code Java basée sur l'Arbre syntaxique
  39. Le SUV phare de Xiaopeng, Xiaopeng G9, a fait ses débuts au salon de l'automobile et s'est tenu en position C dans la nouvelle force?
  40. Docker 从入门到实践系列四 - Docker 容器编排利器 Docker Compose
  41. 6年老猿带你掌握Spring Boot实现定时任务的动态增删启停
  42. disruptor笔记之六:常见场景,java教程从入门到精通pdf百度云
  43. Pourquoi InnoDB n'utilise - t - il pas un cache LRU naïf?
  44. Java Reflection (2): quelques opérations de base de reflection
  45. 6年老猿帶你掌握Spring Boot實現定時任務的動態增删啟停
  46. Les singes âgés vous permettent de maîtriser le démarrage et l'arrêt dynamiques des tâches programmées par Spring boot
  47. Docker From Beginning to Practice Series IV - docker Container chorégraphe Clean docker Composition
  48. 编写 java 程序,为家用电脑 ipv6 自动更新 goddy dns 记录(ddns)
  49. java jvm-old gc耗时几十s,导致系统告警
  50. Disruptor note 6: scénario commun, tutoriel Java de l'introduction à la maîtrise du PDF Baidu Cloud
  51. 编写Java程序启动脚本最佳实践
  52. How to get the correct Linux user's documents, music videos and other directories?
  53. Java JVM Old GC prend des dizaines de s, ce qui provoque une alarme système
  54. Écrivez un programme Java pour mettre à jour automatiquement les enregistrements DNS goddy (ddns) pour l'ordinateur domestique IPv6
  55. 編寫Java程序啟動脚本最佳實踐
  56. Meilleures pratiques pour écrire des scripts de démarrage de programmes Java
  57. Notes sur springcloud Eureka
  58. Ajout, suppression et modification simples de mybatis
  59. Java - carte mémoire de l'objet
  60. Why did docker lose to kubernetes? Docker employee readme!