)]}'
{
  "log": [
    {
      "commit": "a73105b8d4c765d9ebfb664d0a66802127d8e4c7",
      "tree": "b4b11a4050109d8f042c7ac87a5a6d6d91b5d1d2",
      "parents": [
        "3b27ffb00fbe9d9189715ea13ce8712e2f0cb0c5"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 27 14:27:44 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:37:24 2011 +0200"
      },
      "message": "batman-adv: improved client announcement mechanism\n\nThe client announcement mechanism informs every mesh node in the network\nof any connected non-mesh client, in order to find the path towards that\nclient from any given point in the mesh.\n\nThe old implementation was based on the simple idea of appending a data\nbuffer to each OGM containing all the client MAC addresses the node is\nserving. All other nodes can populate their global translation tables\n(table which links client MAC addresses to node addresses) using this\nMAC address buffer and linking it to the node\u0027s address contained in the\nOGM. A node that wants to contact a client has to lookup the node the\nclient is connected to and its address in the global translation table.\n\nIt is easy to understand that this implementation suffers from several\nissues:\n - big overhead (each and every OGM contains the entire list of\n   connected clients)\n - high latencies for client route updates due to long OGM trip time and\n   OGM losses\n\nThe new implementation addresses these issues by appending client\nchanges (new client joined or a client left) to the OGM instead of\nfilling it with all the client addresses each time. In this way nodes\ncan modify their global tables by means of \"updates\", thus reducing the\noverhead within the OGMs.\n\nTo keep the entire network in sync each node maintains a translation\ntable version number (ttvn) and a translation table checksum. These\nvalues are spread with the OGM to allow all the network participants to\ndetermine whether or not they need to update their translation table\ninformation.\n\nWhen a translation table lookup is performed in order to send a packet\nto a client attached to another node, the destination\u0027s ttvn is added to\nthe payload packet. Forwarding nodes can compare the packet\u0027s ttvn with\ntheir destination\u0027s ttvn (this node could have a fresher information\nthan the source) and re-route the packet if necessary. This greatly\nreduces the packet loss of clients roaming from one AP to the next.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "c6c8fea29769d998d94fcec9b9f14d4b52b349d3",
      "tree": "2c8dc8d1a64d48c5737a5745e3c510ff53a23047",
      "parents": [
        "b236da6931e2482bfe44a7865dd4e7bb036f3496"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Dec 13 11:19:28 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 16 13:44:24 2010 -0800"
      },
      "message": "net: Add batman-adv meshing protocol\n\nB.A.T.M.A.N. (better approach to mobile ad-hoc networking) is a routing\nprotocol for multi-hop ad-hoc mesh networks. The networks may be wired or\nwireless. See http://www.open-mesh.org/ for more information and user space\ntools.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
