Megjegyzi programmistera http java
Http - közötti együttműködési jegyzőkönyv a két program, a kliens és a szerver, amely lehet futtatni egy teljesen más, és nagyon távol egymástól a gépeket. Client nevű használó alkalmazás valamilyen szolgáltatást nyújt egy másik alkalmazás - szerverek, általában egy távoli számítógépen. Szinte mindig az ügyfél elkezd kimenő kapcsolatok, és a szerver figyeli a bejövő kapcsolatokat (az ügyfél), bár vannak kivételek.
Az első dolog, hogy megértsük - miként az a kliens-szerver kölcsönhatás. Hogyan találják meg egymást, és hogyan kommunikálnak. Ehhez emlékezzünk a junior egyetemi kurzusok és frissíteni tudásukat a hálózati protokollokat. Ha az OSI és a TCP / IP rövidítések nem vezetnek be, hogy álló helyzetben biztonságosan lépjünk tovább. Azok számára, akik megpróbál nem rendetlenséget fel a fejét részek helyesen támaszkodva a rendelkezésre állás az interneten, emlékeztetem:
Az OSI modell által javasolt Nemzetközi Szervezet az ISO (Nemzetközi Szabványügyi Szervezet) 1984-ben. Minden hálózati funkciók a modellben vannak osztva 7 szint:
Megoszlása az OSI modell protokollok
Ebben az esetben a magasabb szintű elvégzésére bonyolultabb, globális probléma, amely kihasználva az alacsonyabb szinteken. valamint kezelni őket. A cél az alsó szinten - amely egy kiváló szintű szolgáltatást. és a kiváló szinten nem fontos a végrehajtás részletei ezeket a szolgáltatásokat. Alsó szinten egy egyszerű és speciális funkciók. Ideális esetben, minden réteg csak kommunikál azokkal, amelyek vele szomszédos (a felette és alatta). A felső szint megfelel alkalmazása feladat aktuálisan futó alkalmazás, az alacsonyabb - a közvetlen jelek továbbítására egy kommunikációs csatornán keresztül.
A mai napig a fő protokoll stack TCP / IP. Ez a protokoll stack megjelent OSI és népszerűségre tett szert.
Distribution protokollok szintje TCP / IP modell
alkalmazott
"Level 7"
pl. TCP. UDP. SCTP. DCCP
(Routing protokollok, mint az OSPF. Futó tetején IP. Része a hálózati réteg)
A TCP / IP az IP (IP)
(. Támogatás protokollok, mint ICMP és IGMP futtatását az IP, hanem tartozik a hálózati rétegben ARP protokoll egy független leányvállalata protokoll tetején futó a fizikai réteg)
pl. a fizikai környezet és az elvek kódoló információt, T1. E1
Mindkét modell http az alkalmazás réteg és használja a saját jegyzőkönyv végrehajtásával alacsonyabb szinteken. Tekintsük minden szinten - a feladat messze túlmutat egyetlen cikket. Ezért szorítkozom ide egy rövid leírást az egyik szállítási réteg protokollok, azaz a TCP, amelynek alapja közvetlenül http.
A szerver indításkor mondja meg az operációs rendszer, ami a „kölcsön” egy adott portot (vagy több port). Ezután az összes érkező csomagokat ebben a kikötőben a számítógépet, az operációs rendszer küldi a szerveren. Azt mondják, hogy a szerver „figyeli”, hogy a port.
Ügyfél a kapcsolódási kérését az OS a fel nem használt port ideiglenes használatra, és rámutat arra, hogy a küldött csomagok, mint a forrás port. Aztán azon a porton kap választ csomagokat a szerver.
Nos, eljött az idő, hogy megpróbálja kihasználni a tudás és a szavakat a Java =)
Key osztályokban együttműködési programok végrehajtása TCP vannak java.net.Socket és java.net.ServerSocket.
Az alábbiakban a kódok egyszerű TCP szerver és kliens. A szerver továbbítja a konzolhoz mindent jön az ügyfél.
szerver és a kliens kód meglehetősen egyszerű, és nem valószínű, hogy nehézségeket okoz. A legfontosabb dolog, ami szükséges a maguk megérteni, hogy foglalat lehetővé teszi, hogy hozzon létre egy átlátható kapcsolatot teremt a két távoli alkalmazások, ami után az adatátvitel közöttük nem hajtjuk végre bonyolultabb olvasó / író közös patak.
Véleményem TCP megértés minimális alapját megértéséhez HTTP. A következő részben megpróbálom, hogy egy minimális képviseletet közvetlenül a HTTP protokoll és szabványos API Java végrehajtására.