en cours partie 3

This commit is contained in:
Minh VU
2025-02-05 02:02:16 +01:00
parent bfa7cd812d
commit f9d8981119
15 changed files with 146 additions and 10 deletions

View File

@@ -6,21 +6,26 @@ Le 4 février 2025
## Partie I: Le classique serveur Echo
### EXERCICE 1 : Version séquentielle
Nous nous sommes inspirés du cours pour implémenter le serveur écho.
### EXERCICE 2 : Test et capture
![Echo sur client utilisant ClientHandlerBytes](fichier_pour_CR/p1_ex2_bytes.png)
![Echo sur client utilisant ClientHandlerBytes](images/p1_ex2_bytes.png)
quand on voit le contenu du TCP, on voit tout le texte d'échange mais on voit qu'il y a un espace entre chaque 8 caractères quand on passe la taille du buffer. Et à la fin du caractère, nous pouvons voir le dernier caractère pour déterminer la fin du texte.
Quand on voit le contenu du TCP, on voit tout le texte d'échange mais on voit qu'il y a un espace entre chaque 8 caractères quand on passe la taille du buffer. Et à la fin du caractère, nous pouvons voir le dernier caractère pour déterminer la fin du texte.
![Follow> TCP Stream](fichier_pour_CR/p1_ex2_wireshark.png)
![Follow> TCP Stream](images/p1_ex2_wireshark.png)
la taille des segments TCP est cohérente avec la taille du buffer.
La taille des segments TCP est cohérente avec la taille du buffer.
Dans "Bonjour tout le monde !" nous avons 13 octets (comptez le dernier caractère à la fin) de texte et 64 octets pour échanger des informations pour un total de 77 octets.
Dans le texte "Je teste, je suis content, je dors" nous avons 99 octets, dont 64 octets pour le protocole d'échange et l'IP, et 35 pour le texte.
![Data cohérant](fichier_pour_CR/p1_ex2_je_teste.png)
![Data cohérant](images/p1_ex2_je_teste.png)
### EXERCICE 3 : Version Multithreadée
Dans cet exercice, on réussit à créer un multi thread pour 4 personnes seulement, on teste avec le 5ème et il ne peut pas être "echo"
## Partie II: Implémentation dun client HTTPping
@@ -50,10 +55,27 @@ En vous aidant de la spec décrivez les grandes étapes du protocole pour la ré
Par la suite nous vous suggérons dutiliser loption “Connection: Close” dans les réponses.
```
### Exercice 2 : Récupération dune page avec netcat
```
Pensez à faire un retour à la ligne.
example.com supporte-t-il le protocole HTTP/1.0 ?
quel est lencodage utilisé pour le type de retour ?
que se passe-t-il si vous ajoutez “Accept-Encoding : gzip” ?
```
### Exercice 3, Implémentation du HTTP ping
### Exercice 4 : Socket securisée
![Teste HTTPS avec ncat](images/p2_ex4_https.png)
Ensuite, nous devons changer `GET / HTTP/1.1` en `GET / HTTP/1.0` pour détecter https, son port et créer SSLSocketFactory pour détecter le http sécurisé.
On lance wireshark et obtient le message crypté. Malheureusement, je ne peux pas mettre le fichier pcapng car j'utilise l'adresse IP chez moi.
J'ai mis toute la partie http en code commenté.
![Verification HTTPS](images/p2_ex4_wireshark.png)
Vérification de message encrypté:
![Message encrypté](images/p2_ex4_ecrypted.png)
## Partie III : Implémentation dun serveur HTTP simple