Czy muszę wdrożyć obsługę IPv6 dla mojej gry?

10

Zamierzam wdrożyć funkcje sieciowe dla gry, nad którą obecnie pracuję, teraz zastanawiam się, czy muszę wdrożyć obsługę protokołu IPv6, czy wystarczy mieć wsparcie dla protokołu IPv4?

Ali1S232
źródło

Odpowiedzi:

13

Twoje pytanie, jak określono, jest zbyt ogólne, aby można było na nie odpowiedzieć. Odpowiedź zależy od tego, co naprawdę robisz z siecią.

Na przykład, jeśli cała sieć odbywa się za pośrednictwem protokołu HTTP i podobnych protokołów, obsługa protokołu IPv6 jest wystarczająco prosta, aby nie stanowiło to problemu. Prawdopodobnie możesz spoliczkować to w ciągu pół dnia. W tym przypadku naprawdę nie ma powodu, aby tego nie robić.

Jeśli jednak korzystasz z sieci peer-to-peer przez UDP, gdzie próbujesz wcisnąć każdy kawałek do każdego pakietu, to IPv6 nie jest drobną sprawą. Ma z konieczności większy nagłówek pakietu niż IPv4. Oznacza to mniej miejsca na pakiet danych. Może to oznaczać, że musisz zastosować większą kompresję lub ponownie ocenić, ile danych wysyłasz lub cokolwiek innego.

Powiem tak: powinieneś pozostawić dostępną opcję. Spójrz na projekt swojego systemu sieciowego i upewnij się, że nie robisz czegoś, co z perspektywy architektury sprawi, że implementacja IPv6 będzie trudniejsza niż powinna.

Adresy IP powinny należeć do typu, który mógłby na przykład przechowywać adres IPv6. Interfejs do warstwy gniazda powinien być na tyle abstrakcyjny, aby podstawowy akt wysyłania pakietów (jeśli aplikacja to robi) był taki sam dla IPv6 jak dla IPv4.

Zbliża się IPv6, a jeśli zamierzasz wydać grę z obsługą sieci, dobrym pomysłem jest przynajmniej plan wsparcia.

Nicol Bolas
źródło
2

Krótka odpowiedź w tym konkretnym przypadku brzmiałaby „Nie”. Długa odpowiedź brzmiałaby „Czy to może określić sukces lub porażkę twojej gry”? Wówczas wsparcie IPv6 będzie wymagało łatwej aktualizacji, prawda?

Jeśli jest to tylko kwestia osobistego zainteresowania, możesz bezwzględnie spróbować wdrożyć obsługę protokołu IPv6. Ale dla mnie lepiej spędzać ten czas na ulepszaniu gry.

PS Jestem prawie pewien, że większość dużych głównych producentów gier już obsługuje ich IPv6, ale to już inna historia.

Petr Abdulin
źródło