TCP i HTTP to różne rzeczy.
TCP jest warstwą transportową. Z definicji odpowiada za przenoszenie nad nim protokołów warstwy aplikacji (w twoim przypadku HTTP). TCP nie działa przez port. Jest arbitrem portów. Innymi słowy, kiedy łączysz się z serwerem HTTP, łączysz się przez port TCP 80. Kiedy łączysz się z HTTPS, łączysz się przez port TCP 443.
HTTP i HTTPS mogą działać na dowolnym porcie TCP. 80 i 443 to tylko te powszechne. Jeśli chcesz, możesz zmusić dowolną aplikację do nasłuchiwania na tych portach. Tak więc, możesz połączyć się z serwerem przez port 80, używając innego protokołu zamiast HTTP, ale tylko wtedy, gdy serwer jest skonfigurowany do nasłuchiwania na tym porcie za pomocą tego innego protokołu i tylko jeśli HTTP lub HTTPS są skonfigurowane tak, aby nie używać tych portów (zakładając, że używasz na nim serwera WWW).
Teraz wspomniałeś, że twój dostawca korzysta z serwera proxy. Czy można nawiązać połączenie inne niż HTTP / HTTPS przez port 80 lub 443? To zależy od tego, jak inteligentny jest serwer proxy. Jeśli przeprowadza kontrolę pakietów, może weryfikować nagłówki HTTP, aby upewnić się, że ruch przechodzący przez te porty jest rzeczywiście ruchem HTTP. Istnieją sposoby na sfałszowanie go, ale zależy to od tego, jak głęboko serwer proxy sprawdza ruch. Jeśli serwer proxy blokuje ruch inny niż HTTP / HTTPS na portach HTTP / HTTPS, nie możesz nic na to poradzić poza squawk u swojego dostawcy (lub zapłacić wyższą cenę, zależnie od przypadku).
Jeśli chodzi o sposób komunikowania się różnych aplikacji mobilnych, wszystko zależy od tego, jak je napisał sprzedawca. Większość używa HTTP lub HTTPS odpowiednio przez port 80 lub 443, ponieważ większość aplikacji mobilnych to po prostu skórowane aplikacje internetowe. Ale nie ma żadnej reguły, która mówi, że muszą, i nie ma prawdziwego sposobu, aby to wiedzieć, chyba że w jakiś sposób powąszysz pakiety.
Mam nadzieję, że odpowiedziałem na twoje pytanie.