(Prievadai) Parengė Mindaugas Jasiūnas

Slides:



Advertisements
Similar presentations
IS 247 Introduction to Web Application Development Tim Wu.
Advertisements

Socket Addresses. Domains Internet domains –familiar with these Unix domains –for processes communicating on the same hosts –not sure of widespread use.
Understanding IPv6 Slide: 1 Lesson 2 IPv6 Protocol for the Windows.NET Server Family.
Internet-Based Client Access
IT COOKBOOK Windows Network Programming. Chapter 01. Intro. to Network and Socket Programming.
Sockets The Standard Network Programming API Agenda Evolution Evolution API Components (Sockets/Winsock) API Components (Sockets/Winsock) Protocol Configuration.
Internet Applications and Network Programming Dr. Abraham Professor UTPA.
RGEC MEERUT(IWT CS703) 1 Java Networking RGEC Meerut.
Computer Networks Chapter 2: Applications and Layered Architectures.
4061 Session 25 (4/17). Today Briefly: Select and Poll Layered Protocols and the Internets Intro to Network Programming.
INDEX oWoWhat is TCP/IP protocol suite ? oDoDifferent layers. oEoEncapsulation. oPoProtocol Interface.
Cisco 1 - Networking Basics Perrine. J Page 16/5/2016 Chapter 11 At which layer of the TCP/IP model does Telnet operate? 1.application 2.presentation 3.session.
UNIX operacinės sistemos V. TCP/IP įrankiai. SSH naudojimas Simonas Kareiva 2014 m. rudens semestras.
Advanced UNIX programming Fall 2002, lecture 16 Instructor: Ashok Srinivasan Acknowledgements: The syllabus and power point presentations are modified.
Berkeley Socket Abstraction
Simple Socket Server m Yumiko Kimezawa September 19, 20121RPS.
NORĖDAMI PAKEISTI SKAIDRĖS STILIŲ – SPUSTELĖKIT E DEŠINIUOJU PELĖS KLAVIŠU ANT SKAIDRĖS FONO IR PASIRINKITE > LAYOUT ARBA DARBALAUKI O ĮRANKIŲ JUOSTOJE.
CLIENT (Browser) socket accept C1 C2 recv C2 recv send C2 send end_thread recv C3 send bind connect Web Server Proxy recv close C3 close C2 end_thread.
Vaizdinė užduotis. Kuriose iš šių valstybių galima pamatyti tokius gyvenamuosius namus? Jemene Tanzanijoje Mongolijoje Indonezijoje A B C D 1.
MA. ME MI MO MU MÁ MÉ MÍ MÓ MŮ LA LE LI.
Some Network Commands n Some useful network commands –ping –finger –nslookup –tracert –ipconfig.
Network address translation Tinklo adresų vertimas
Tiny http client and server
Jim Fawcett CSE 681 – Software Modeling & Analysis Fall 2002
Two FTP connections from different hosts
Network Wiring and Reference
Smart none of us are as smart as all of us. smart none of us are as smart as all of us.
Darbą parengė: Viktorija Drūteikaitė IT2
SSGG (SWOT): Organizacijos stiprybės ir silpnybės, galimybės ir grėsmės (nustatymas, grupavimas, vertinimas, rezultatas) Pagrindinė literatūra: Lietuvos.
MAUDYKLŲ VANDENS KOKYBĖS STEBĖSENOS
Robert Andruškevič AT27D.   Tai yra operacinė sistema, daugiausia naudojama išmaniuosiuose telefonuose, nors ją galima įdiegti ir kituose mobiliuosiuose.
Kompiuterio sandara, programinė įranga
Windows media streaming
Chapter 4 Core TCP/IP Protocols
Introduction to TCP/IP
LIETUVOS VARTOTOJŲ GALIMYBĖS NAUDOTIS VISATEKSTĖMIS DUOMENŲ BAZĖMIS
PHP „CodeIgniter“ karkaso saugumas
Pagrindinės sąvokos Hipertekstas ir multimedija
Skyrius 1: Paskirstytos informacinės sistemos
Ernestas Kaukėnas MIF IT 3grupė
Atliko: Jokūbas Rusakevičius VU MIF PS 3k 3g
JavaScript kalbos apžvalga
Programinė įranga.
IPod MENIU.
Gijos (Threads) Java kalboje
Kas yra arduino ? Parengė:Karolis Šumskis ir Mokytoja ekspertė Elena Šišenina.
Atvirojo kodo elektronika
Failai ir jų tvarkymas.
Antrosios kartos interneto technologijos
Saulius Ragaišis, VU MIF
2 skyrius Procesai ir gijos 2.1 Ką vadiname procesu 2.2 Proceso būviai
Virtualus kompiuteris
Monika Kelpšaitė 4k. PS MIF VU
Funkcijos 9 paskaita.
Operacinė sistema Testas 9 klasė
PARTNERIŲ PAIEŠKA UŽSIENYJE
Pertrauktys (Interrupts)
Daugelio dokumentų sąsaja (angl. Multiple document interface)
Windows Ribbon Framework
27.
Klaipėdos Simono Dacho progimnazija
Grupinio darbo programinė įranga Lotus Notes
Pranešėjas Jurij Kuznecov
Windows Sockets Šarūnas Valiukas.
Chapter 3 Socket API © Bobby Hoggard, Department of Computer Science, East Carolina University These slides may not be used or duplicated without permission.
Windows sockets Iveta LenčiauskaitE.
Jim Fawcett CSE 681 – Software Modeling & Analysis Summer 2003
Presentation transcript:

(Prievadai) Parengė Mindaugas Jasiūnas Windows Sockets (Prievadai) Parengė Mindaugas Jasiūnas

Windows Sockets(WinSock) Tai specifikacija Microsoft Windows tinklo įrangai, taisyklių rinkinys aprašantis standartus kaip aplikacijos gali naudotis tinklo paslaugomis, ypač TCP/IP. Sąsaja(interface) besijungianti su tinklo protokolais. Sukurta galimybė kurti pažangius interneto tinklus, tokius kaip vidinis tinklas intranet, extranet ir kitus su/be apribojimais. Naudojama lizdų(prievadų) paradigma- klientas/serveris. Klientas sukuria susijungimą su serveriu ir siunčia užklausą. Serveris gauna užklausą, ją apdoroja ir siunčia atsakymą atgal.

WinSocks veikimas prievadų paradigma Serveris: Klientas: Sukuria local socket(prievadą) Suriša prievadą su specifiniu port‘o numeriu Laukia ateinančių sujungimų su WinSocks ( listen() ) Priima ryšį ir paskiria naują socket Siunčia/gauna duomenis Klientas: Nuotoliniu būdu nustato socket address(prievadą) Sukuria lokalų prievadą Sujungia prievadą nuotoliniu būdu

WinSock2 WinSock2 yra patobulintas pradinio WinSock mechanizmas pašalintomis klaidomis, turintis daug nedidelių pataisymų, paaiškinimų ir naudojimo rekomendacijų. Pašalintas 16-bitų Windows programų palaikymas. WinSock2 turi įrankį, vadinamą sluoksninį paslaugų teikėją(LSP- Layered Service Provider). Sluokninis paslaugų teikėjas LSP žinomas kaip naudingas plėtinys įgalinantis „tėvų kontrolę“, interneto turinio filtravimą, tinklo apkrovimą pagal prioritetus(QoS būdu). Pridėtas funkcionalumas ir kitų protokolų palaikymas. Ne tik TCP/IP.

Windows Socket Application pajėgumai Microsoft Windows tinklų komponentai buvo sukurti pajėgumui ir išskaidymui pasiekti. Tai leidžia aplikacijoms maksimaliai išnaudoti turimą tinklo pralaidumą. Windows prievadai ir Windows TCP/IP protokolų stekas buvo supaprastinti ir padaryti kuo kompaktiškesni, kas padidino greitį. Kaip rezultatas, tinkamai parašytos Windows programos gali pasiekti išskirtinį našumą ir efektyvumą. Windows yra pajėgūs aptarnauti 200 000 TCP jungčių vienu metu. SPECWeb96 atliktame bandyme Internet Information Server, Windows aptarnavo daugiau kaip 25 000 HTTP užklausų per sekundę. Windows pasiekė perdavimo rekordą, daugiau kaip 750Mbps tarpžemyniniame Gigabit tinkle susidedančiame iš 10 hops‘ų. Hops‘as-įvykis, nutinkantis duomenų paketą siunčiant per routerį.

Windows Socket našumas Sukūrus Windows Sockets buvo pasiektas viso darbo efektyvumas Tinklo programos inicijuojamos greitai be užlaikymo (Galimos užduotys atliekamos dar neprisijungus į tinklą.) Nereikia laukti kol tinklas uždaromas (Užduotys reikalaujančios tinklo laukimo neįnicializuojamos.) Užtikrinta greita vartotojo sąsajos reakcija. (Aplikacijos neapkraunamos nebūtinais kvietimais. Viskas viršijant 500 milisec yra lag‘as.) Tikrinamos tinklo klaidos. (Kritinės tinklo klaidos taisomos be vartotojo žinios. Nekritinės klaidos gali būti ignoruojamos.) Aplikacija apsibrėžia savo veikimo laiką. (Aplikacija apsibrėžia savo veikimo laiką. Windows Sockets connect blokas įvykdomas per laiko tarpą iki 21 sekundės) Sumažintos protokolų išlaidos laiko ir sistemų atžvilgiu. (Tinklo pralaidumas neapkraunamas nereikalingomis operacijomis ir kreipiniais. Visos galimos operacijos apdorojamos lokaliai.)

Windows Sockets programavimas #include <winsock2.h> Windows Sockets programavimas Windows Sockets yra orientuotas C/C++ programuotojams. Windows Sockets yra orientuotas programavimui Windows platformoje. Windows Sockets leidžia programuotojams kurti pažangias interneto, intraneto, ekstraneto ir kitas tinklo struktūras nepriklausomai nuo protokolų, kuriais perduodami duomenys. WinSock atveria galimybę naudotis tokiomis pažangiomis tinklo galimybėmis kaip multicast‘ingas ir serviso kontrolė(QoS). WinSock naudoja WOSA(Windows Open System Architecture) modelį, t.y. apibrėžia standartinę paslaugų teikimo sąsają tarp API ir protokolų. WinSock API gali būti pasiektas per ws2_32.lib biblioteką.

Windows Sockets pagrindinės komandos WSAStartup() - Inicializuoja WinSock DLL naudojimą getaddrinfo() - Surenka tinklo informaciją nepriklausomai nuo protokolo socket() - Sukuria prievadą(socket) bind() - Suriša lokalų IP su prievadu listen() - Prievadą nustato taip, kad ieškotų ateinančių prašymų accept() - Gavus prašymą, jis susiejamas su prievadu. send() - Siunčia gautus duomenis prievadu closesocket() - Uždaro/išjungia prievadą WSACleanup() - Nutraukia WinSock DLL naudojimą ir atlaisvina resursus

Portai 7 – ping 13 – laikas 15 – netstat 22 – SSH 23 – Telnet Vienas svarbiausių aspektų programuojant prievadus yra port‘ai. Prievadas(socket) gali būti atidarytas betkokiame port‘e. Pasirinktas portas privalo būti unikalus. Keleta portų yra dedikuoti konkrečiam tikslui, tačiau nenaudojant jų lieka apie 6000 laisvų. Keletas dažniausiai naudojamų dedikuotų portų yra šie: 7 – ping 13 – laikas 15 – netstat 22 – SSH 23 – Telnet 25 - SMTP (elektroninio pašto siuntimas) 43 – Whois (Query information) 79 – Finger (Query server information) 80 – HTTP (interneto tinklalapiai) 110- POP (elektroninio pašto gavimas) 119 – NNTP 513 – CLOGIN (Used for IP spoofing)

Ačiū už dėmesį