Co to jest AF INET i dlaczego go potrzebuję?
Zaczynam programowanie socket i ciągle widzę to AF_INET
.
- jaki jest cel
AF_INET
? - Czy kiedykolwiek użyto czegoś innego zamiast tego?
- Jeśli nie, to dlaczego tam jest? Na ewentualne zmiany w przyszłości?
Jeśli tak, to co i dlaczego?
5 answers
AF_INET
jest rodziną adresów, która jest używana do wyznaczenia typu adresów, z którymi gniazdo może się komunikować(w tym przypadku adresy protokołu internetowego v4). Kiedy tworzysz Gniazdo, musisz określić jego rodzinę adresów, a następnie możesz używać tylko adresów tego typu z gniazdem. Na przykład jądro Linuksa obsługuje 29 innych rodzin adresów, takich jak gniazda UNIX (AF_UNIX
) i IPX (AF_IPX
), a także komunikację z IRDA i Bluetooth (AF_IRDA
i AF_BLUETOOTH
, ale jest to wątpliwe będziesz ich używać na tak niskim poziomie).
W większości przypadków trzymanie się AF_INET
dla programowania gniazd przez sieć jest najbezpieczniejszą opcją. Istnieje również AF_INET6
dla adresów protokołu internetowego v6.
Mam nadzieję, że to pomoże,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-15 08:08:17
Głównym celem AF_INET było dopuszczenie innych możliwych protokołów sieciowych lub rodzin adresów (AF to rodzina adresów; PF_INET to rodzina protokołów internetowych (IPv4)). Na przykład prawdopodobnie nadal istnieje kilka sieci Netware SPX/IPX; istniały inne systemy sieciowe, takie jak DECNet, StarLAN i SNA, nie wspominając o źle zrodzonym ISO OSI (Open Systems Interconnection), a te niekoniecznie wykorzystywały wszechobecny obecnie adres IP do identyfikacji hosta rówieśniczego w sieci. połączenia sieciowe.
Wszechobecną alternatywą dla AF_INET (który z perspektywy czasu powinien być nazwany AF_INET4) jest AF_INET6, dla rodziny adresów IPv6. IPv4 używa adresów 32-bitowych; IPv6 używa adresów 128-bitowych.
Możesz zobaczyć inne wartości-ale są one nietypowe. Jest po to, aby umożliwić alternatywne i przyszłe kierunki. Interfejs socketów jest rzeczywiście bardzo ogólny - co jest jednym z powodów, dla których rozwijał się tam, gdzie inne interfejsy sieciowe mają uschły.
Życie (w większości) stało się prostsze-bądź wdzięczny.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-20 12:11:30
Gniazda charakteryzują się domeną, typem i protokołem transportowym. Wspólne domeny to:
-
AF_UNIX: format adresu to UNIX pathname
-
AF_INET: format adresu To host i numer portu
(istnieje wiele innych opcji, które mogą być użyte tutaj do celów specjalistycznych).zwykle używamy AF_INET do programowania gniazd
Numer referencyjny: http://www.cs.uic.edu / ~troy/fall99/eecs471/sockets.html
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-15 05:58:03
Potrzebujesz argumentów takich jak AF_UNIX lub AF_INET, aby określić, jakiego typu adresowania gniazd używasz do implementacji komunikacji gniazd IPC. Af oznacza rodzinę adresów.
Jak w standardowym gnieździe BSD (przyjętym w module gniazd Pythona) adresy są reprezentowane w następujący sposób:
Dla rodziny adresów AF_UNIX/AF_LOCAL używany jest pojedynczy ciąg znaków. Ta opcja jest używana dla IPC na komputerach lokalnych, gdzie nie jest wymagany adres IP.
Para (host, port) jest używany dla rodziny adresów AF_INET, gdzie host jest ciągiem znaków reprezentującym nazwę hosta w notacji domeny internetowej, np. "daring.cwi.nl' lub adres IPv4, taki jak '100.50.200.5', a port jest liczbą całkowitą. Używany do komunikacji między procesami przez Internet.
AF_UNIX, AF_INET6 , AF_NETLINK , AF_TIPC , AF_CAN , AF_BLUETOOTH , AF_PACKET, AF_RDS to inne opcje, które mogą być używane zamiast AF_INET.
Ten wątek o przydatne mogą być również różnice między AF_INET i PF_INET .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:10
Definiuje rodzinę adresów protokołów.określa typ utworzonego gniazda. obsługa Pocket pc AF_INET.
Treść na poniższej stronie jest całkiem przyzwoita http://etutorials.org/Programming/Pocket+pc+network+programming/Chapter+1.+Winsock/Streaming+TCP+Sockets/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-03 01:55:42