Introduction

The P2P protocol is used to exchange data between clients, namely:

  • MsnObject transfer:
    • display pictures
    • custom emoticons
    • backgrounds
    • winks
    • voiceclips
  • File transfer
  • Games and activities
  • Webcam transfer

Overall design

The P2P protocol is layered, it uses:

  1. a bridge to send the messages (switchboard or direct connection)
  2. a transport protocol to split messages, send data, and ack arrival (the binary headers)
  3. a session protocol to invite a client, transfer to a new bridge, or close the P2P application (the MSNSLP data).

More information

For more information, see the following online sources for now:

Note: these sources only describe the flow of the MSNP2P protocol under ideal circumstances, and barely describe the overall picture. KMess is able to cope with a lot more.

Other related projects: