Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


socket question

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming
View previous topic :: View next topic  
Author Message
oib111
I post too much
Reputation: 0

Joined: 02 Apr 2007
Posts: 2947
Location: you wanna know why?

PostPosted: Fri Aug 08, 2008 12:11 am    Post subject: socket question Reply with quote

How do programs like AIM and MSN work, because say you have a network with three computers. The public IP on all of them would be the same if they checked (most likely). So with AIM and MSN they connect to a socket on a specified IP which would be the public IP, but how does it send to each computer on the network. So that a message going to one person goes to their conversation instead of the other person?
_________________


8D wrote:

cigs dont make people high, which weed does, which causes them to do bad stuff. like killing
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Zand
Master Cheater
Reputation: 0

Joined: 21 Jul 2006
Posts: 424

PostPosted: Fri Aug 08, 2008 12:58 am    Post subject: Reply with quote

Thats not MSN or AIM working. It's the network's NAT.
Back to top
View user's profile Send private message
atom0s
Moderator
Reputation: 205

Joined: 25 Jan 2006
Posts: 8587
Location: 127.0.0.1

PostPosted: Fri Aug 08, 2008 2:49 am    Post subject: Reply with quote

Read up on packet headers. Like Zand said, thats not AIM/MSN doing the work and knowing what goes where.
_________________
- Retired.
Back to top
View user's profile Send private message Visit poster's website
NINTENDO
Grandmaster Cheater Supreme
Reputation: 0

Joined: 02 Nov 2007
Posts: 1371

PostPosted: Fri Aug 08, 2008 5:34 am    Post subject: Reply with quote

still you didn't answer the question?
Is the client also a server? If it is then everyone should need to open ports in order for it to work?
Or
Do they have like this master server, then it should get overloaded in half an hour with all the messages being sent.

_________________
Intel over amd yes.
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger
oib111
I post too much
Reputation: 0

Joined: 02 Apr 2007
Posts: 2947
Location: you wanna know why?

PostPosted: Fri Aug 08, 2008 5:50 am    Post subject: Reply with quote

Isn't NAT for port forwarding? And thanks Wiccaan I'll look into that.

@ Wiccaan:

I was reading up on wikipedia about the different socket types, and whats the difference between TCP and UDP. From what I'm getting it seems like TCP is "reliable" and UDP is "unreliable" because it doesn't notify the user if it fails. And about packet headers, is it important to know about the packets format (?):

Quote:

1. 4 bits that contain the version, that specifies if it's an IPv4 or IPv6 packet,
2. 4 bits that contain the Internet Header Length which is the length of the header in multiples of 4 bytes. Ex. 5 is equal to 20 bytes.
3. 8 bits that contain the Type of Service, also referred to as Quality of Service (QoS), which describes what priority the packet should have,
4. 16 bits that contain the length of the packet in bytes,
5. 16 bits that contain an identification tag to help reconstruct the packet from several fragments,
6. 3 bits that contain a zero, a flag that says whether the packet is allowed to be fragmented or not (DF: Don't fragment), and a flag to state whether more fragments of a packet follow (MF: More Fragments)
7. 13 bits that contain the fragment offset, a field to identify which fragment this packet is attached to,
8. 8 bits that contain the Time to live (TTL) which is the number of hops (router, computer or device along a network) the packet is allowed to pass before it dies (for example, a packet with a TTL of 16 will be allowed to go across 16 routers to get to its destination before it is discarded),
9. 8 bits that contain the protocol (TCP, UDP, ICMP, etc...)
10. 16 bits that contain the Header Checksum, a number used in error detection,
11. 32 bits that contain the source IP address,
12. 32 bits that contain the destination address.

_________________


8D wrote:

cigs dont make people high, which weed does, which causes them to do bad stuff. like killing
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
NINTENDO
Grandmaster Cheater Supreme
Reputation: 0

Joined: 02 Nov 2007
Posts: 1371

PostPosted: Fri Aug 08, 2008 6:04 am    Post subject: Reply with quote

oib111 wrote:
Isn't NAT for port forwarding? And thanks Wiccaan I'll look into that.

@ Wiccaan:

I was reading up on wikipedia about the different socket types, and whats the difference between TCP and UDP. From what I'm getting it seems like TCP is "reliable" and UDP is "unreliable" because it doesn't notify the user if it fails. And about packet headers, is it important to know about the packets format (?):

Quote:

1. 4 bits that contain the version, that specifies if it's an IPv4 or IPv6 packet,
2. 4 bits that contain the Internet Header Length which is the length of the header in multiples of 4 bytes. Ex. 5 is equal to 20 bytes.
3. 8 bits that contain the Type of Service, also referred to as Quality of Service (QoS), which describes what priority the packet should have,
4. 16 bits that contain the length of the packet in bytes,
5. 16 bits that contain an identification tag to help reconstruct the packet from several fragments,
6. 3 bits that contain a zero, a flag that says whether the packet is allowed to be fragmented or not (DF: Don't fragment), and a flag to state whether more fragments of a packet follow (MF: More Fragments)
7. 13 bits that contain the fragment offset, a field to identify which fragment this packet is attached to,
8. 8 bits that contain the Time to live (TTL) which is the number of hops (router, computer or device along a network) the packet is allowed to pass before it dies (for example, a packet with a TTL of 16 will be allowed to go across 16 routers to get to its destination before it is discarded),
9. 8 bits that contain the protocol (TCP, UDP, ICMP, etc...)
10. 16 bits that contain the Header Checksum, a number used in error detection,
11. 32 bits that contain the source IP address,
12. 32 bits that contain the destination address.

It's not fair to just say that UDP is not stable.

_________________
Intel over amd yes.
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger
atom0s
Moderator
Reputation: 205

Joined: 25 Jan 2006
Posts: 8587
Location: 127.0.0.1

PostPosted: Fri Aug 08, 2008 6:05 am    Post subject: Reply with quote

Detailed information about NAT:
http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a0080094831.shtml

naablet wrote:
still you didn't answer the question?
Is the client also a server? If it is then everyone should need to open ports in order for it to work?
Or
Do they have like this master server, then it should get overloaded in half an hour with all the messages being sent.


The question was answered. AIM/MSN do not handle the inner workings of a persons network. The router/switch/etc. the computers are all connected to handle the packets. Which is why NAT was brought up.

And yes, they use central servers, and no they wont get over-loaded, they are computers made for the purpose of constant transmission and high load. And they don't use 1 server for everything. Things are broken into parts and are handled by multiple processors and such.

_________________
- Retired.
Back to top
View user's profile Send private message Visit poster's website
oib111
I post too much
Reputation: 0

Joined: 02 Apr 2007
Posts: 2947
Location: you wanna know why?

PostPosted: Fri Aug 08, 2008 1:29 pm    Post subject: Reply with quote

Is there any documentation on the possible values for certain parts of the packet (i.e the Version and ToS)? And do MSN and AIM do anything to make sure the router knows who to give the message to? I mean in a programming sense, if I wanted to start a conversation with someone, AIM/MSN would connect to their public IP, but then how would it send a message to that person? It's not like the router just knows that AIM/MSN wants to send it to that specific person.
_________________


8D wrote:

cigs dont make people high, which weed does, which causes them to do bad stuff. like killing
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
HalfPrime
Grandmaster Cheater
Reputation: 0

Joined: 12 Mar 2008
Posts: 532
Location: Right there...On your monitor

PostPosted: Fri Aug 08, 2008 9:44 pm    Post subject: Reply with quote

The client behind the firewall would open a socket itself.
Client opens a socket and tells the server (Which would be constantly listening) it wants to chat - lines of communication are open.

_________________
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites