Siatki elementów równorzędnych
Siatka to nazwana kolekcja (wzajemnie połączony graf) węzłów równorzędnych, które mogą komunikować się między sobą i które są identyfikowane przez unikatowy identyfikator siatki. Każdy węzeł jest połączony z wieloma innymi węzłami. W dobrze połączonej siatki istnieje ścieżka między dwoma węzłami, z stosunkowo kilkoma przeskokami między węzłami na najdalejszych krawędziach siatki, a siatka pozostanie połączona, nawet jeśli niektóre węzły lub połączenia wypadną. Aktywne węzły w siatce publikują informacje o punkcie końcowym przy użyciu odpowiedniego identyfikatora siatki, aby inni równorzędni mogli je znaleźć.
Cechy siatki utworzonej przy użyciu kanału równorzędnego
Jednoznacznie zidentyfikowane
- Unikatowy identyfikator identyfikuje każdą siatkę. Nazwa siatki (lub identyfikator siatki) ma taki sam format jak nazwa hosta systemu nazw domen (DNS). W związku z tym ten identyfikator siatki musi być unikatowy dla zamierzonego klienta aplikacji w zakresie używanego rozpoznawania nazw. Nazwa pospolita, taka jak "MyFamilysPeers" lub "KevinsPokerTable", może łatwo zderzać się z innymi nazwami użytkowników i może zwracać niezamierzone informacje o punkcie końcowym elementu równorzędnego, co może spowodować problemy z prywatnością lub zwiększyć opóźnienie połączenia. Jednym ze sposobów uniknięcia tych problemów może być dodanie unikatowego identyfikatora jako postfiksu do pseudonimu siatki (na przykład "KevinsPokerTable90210").
Powodzie komunikatów
- Siatka umożliwia propagację komunikatów z co najmniej jednego nadawcy do wszystkich innych węzłów równorzędnych w tej samej siatki. Komunikaty zalane węzłami równorzędnymi używają nagłówków określonych w przestrzeni nazw w lokalizacji
http://schemas.microsoft.com/net/2006/05/peer
.
Zoptymalizowane Połączenie iony
- Siatka kanału równorzędnego automatycznie dostosowuje się, gdy węzły łączą się i opuszczają, zapewniając, że wszystkie węzły mają dobrą łączność z niewielką szansą na utworzenie partycji (grupy węzłów odizolowane od siebie). Połączenie iony w siatce są również dynamicznie optymalizowane na podstawie bieżących wzorców ruchu, dzięki czemu opóźnienie komunikatów od nadawcy do odbiorcy jest możliwie najmniejsze.
Popularne funkcje sieciowe, które nie zapewniają kanału równorzędnego
Ważne jest, aby pamiętać o popularnych funkcjach sieciowych, które nie zapewniają kanału równorzędnego. Te funkcje, które mogą być oparte na kanale równorzędnym, obejmują następujące elementy:
Porządkowanie komunikatów: komunikaty pochodzące z jednego źródła mogą nie docierać do wszystkich innych stron w tej samej kolejności lub w kolejności, w jaką źródło wysłało. Aplikacje, które wymagają dostarczenia komunikatów w określonej kolejności, muszą je skompilować w swoich aplikacjach (na przykład przez dołączenie monotonicznie rosnącego identyfikatora ze wszystkimi komunikatami).
Niezawodna obsługa komunikatów: kanał równorzędny nie zawiera mechanizmu zapewniającego odbieranie komunikatów przez wszystkich elementów równorzędnych. Aby zagwarantować dostarczanie komunikatów, musisz napisać warstwę niezawodności na podstawie kanału równorzędnego.