Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/components/cnp3-ebook/principlesnetwork/changes/?format=api&page=15
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 323,
    "next": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/changes/?format=api&page=16",
    "previous": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/changes/?format=api&page=14",
    "results": [
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37521/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.221832+02:00",
            "action": 59,
            "target": "A widely used alternative to the `flat addressing scheme` is the `hierarchical addressing scheme`. This addressing scheme builds upon the fact that networks usually contain much more hosts than routers. In this case, a first solution to reduce the size of the forwarding tables is to create a hierarchy of addresses. This is the solution chosen by the post office since postal addresses contain a country, sometimes a state or province, a city, a street and finally a street number. When an envelope is forwarded by a post office in a remote country, it only looks at the destination country, while a post office in the same province will look at the city information. Only the post office responsible for a given city will look at the street name and only the postman will use the street number. `Hierarchical addresses` provide a similar solution for network addresses. For example, the address of an Internet host attached to a campus network could contain in the high-order bits an identification of the Internet Service Provider (ISP) that serves the campus network. Then, a subsequent block of bits identifies the campus network which is one of the customers of the ISP. Finally, the low order bits of the address identify the host in the campus network.",
            "id": 14741,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14741/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37522/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.221874+02:00",
            "action": 59,
            "target": "The main advantage of hierarchical addresses is that it is possible to significantly reduce the size of the forwarding tables. In many networks, the number of routers can be several orders of magnitude smaller than the number of hosts. A campus network may contain a dozen routers and thousands of hosts. The largest Internet Services Providers typically contain no more than a few tens of thousands of routers but still serve tens or hundreds of millions of hosts.",
            "id": 14742,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14742/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37523/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.221913+02:00",
            "action": 59,
            "target": "Despite their popularity, `hierarchical addresses` have some drawbacks. Their first drawback is that a lookup in the forwarding table is more complex than when using `flat addresses`. For example, on the Internet, network nodes have to perform a longest-match to forward each packet. This is partially compensated by the reduction in the size of the forwarding tables, but the additional complexity of the lookup operation has been a difficulty to implement hardware support for packet forwarding. A second drawback of the utilization of hierarchical addresses is that when a host connects for the first time to a network, it must contact one router to determine its own address. This requires some packet exchanges between the host and some routers. Furthermore, if a host moves and is attached to another routers, its network address will change. This can be an issue with some mobile hosts.",
            "id": 14743,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14743/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37524/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.221953+02:00",
            "action": 59,
            "target": "Router `R1` fragments the packet into two fragments before transmitting them to router `R2`. Router `R2` reassembles the two packet fragments in a larger packet before transmitting them on the link towards host `B`.",
            "id": 14744,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14744/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37525/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.221990+02:00",
            "action": 59,
            "target": "The second organization of the network layer, called `virtual circuits`, has been inspired by the organization of telephone networks. Telephone networks have been designed to carry phone calls that usually last a few minutes. Each phone is identified by a telephone number and is attached to a telephone switch. To initiate a phone call, a telephone first needs to send the destination's phone number to its local switch. The switch cooperates with the other switches in the network to create a bi-directional channel between the two telephones through the network. This channel will be used by the two telephones during the lifetime of the call and will be released at the end of the call. Until the 1960s, most of these channels were created manually, by telephone operators, upon request of the caller. Today's telephone networks use automated switches and allow several channels to be carried over the same physical link, but the principles roughly remain the same.",
            "id": 14745,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14745/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37526/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222030+02:00",
            "action": 59,
            "target": "In a network using virtual circuits, all hosts are also identified with a network layer address. However, packet forwarding is not performed by looking at the destination address of each packet. With the `virtual circuit` organization, each data packet contains one label [#flabels]_. A label is an integer which is part of the packet header. Routers implement `label switching` to forward `labelled data packet`. Upon reception of a packet, a router consults its `label forwarding table` to find the outgoing interface for this packet. In contrast with the datagram mode, this lookup is very simple. The `label forwarding table` is an array stored in memory and the label of the incoming packet is the index to access this array. This implies that the lookup operation has an `O(1)` complexity in contrast with other packet forwarding techniques. To ensure that on each node the packet label is an index in the `label forwarding table`, each router that forwards a packet replaces the label of the forwarded packet with the label found in the `label forwarding table`.  Each entry of the `label forwarding table` contains two pieces of information :",
            "id": 14746,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14746/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37527/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222071+02:00",
            "action": 59,
            "target": "To create these virtual circuits, we need to configure the `label forwarding tables` of all routers. For simplicity, assume that a label forwarding table only contains two entries. Assume that `R5` wants to receive the packets from the virtual circuit created by `R1` (resp. `R2`) with `label=1` (`label=0`). `R4` could use the following `label forwarding table`:",
            "id": 14747,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14747/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37528/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222109+02:00",
            "action": 59,
            "target": "R4's label forwarding table",
            "id": 14748,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14748/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37529/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222146+02:00",
            "action": 59,
            "target": "R2's label forwarding table",
            "id": 14749,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14749/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37530/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222183+02:00",
            "action": 59,
            "target": "R3's label forwarding table",
            "id": 14750,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14750/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37531/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222220+02:00",
            "action": 59,
            "target": "With the above `label forwarding table`, `R1` needs to originate the packets that belong to the `R1->R3->R4->R2->R5` circuit with `label=0`. The packets received from `R2` and belonging to the `R2->R1->R3->R4->R5` circuit would then use `label=1` on the `R1-R3` link. `R1` 's label forwarding table could be built as follows :",
            "id": 14751,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14751/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37532/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222257+02:00",
            "action": 59,
            "target": "R1's label forwarding table",
            "id": 14752,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14752/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37533/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222294+02:00",
            "action": 59,
            "target": "Nowadays, most deployed networks rely on distributed algorithms, called routing protocols, to compute the forwarding tables that are installed on the routers. These distributed algorithms are part of the `control plane`. They are usually implemented in software and are executed on the main CPU of the routers. There are two main families of routing protocols : distance vector routing and link state routing. Both are capable of discovering autonomously the network and react dynamically to topology changes.",
            "id": 14753,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14753/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37534/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222333+02:00",
            "action": 59,
            "target": "the cost of the new route is smaller than the cost of the already known route `((V[d].cost + l.cost) < R[d].cost)`",
            "id": 14754,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14754/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37535/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222370+02:00",
            "action": 59,
            "target": "the new route was learned over the same link as the current best route towards this destination `(R[d].link == l)`",
            "id": 14755,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14755/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37536/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222407+02:00",
            "action": 59,
            "target": "At this point, all routers have a routing table allowing them to reach all other routers, except router `A`, which cannot yet reach router `B`. `A` recovers the route towards `B` once router `D` sends its updated distance vector :math:`[A=1,B=2,C=2,D=0,E=1]`. This last step is illustrated in figure below, which shows the routing tables on all routers.",
            "id": 14756,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14756/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37537/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222444+02:00",
            "action": 59,
            "target": "Unfortunately, split-horizon is not sufficient to avoid all count to infinity problems with distance vector routing. Consider the failure of link `A-B` in the four routers network shown below.",
            "id": 14757,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14757/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37538/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222489+02:00",
            "action": 59,
            "target": "LSP.Links[]: links advertised in the LSP. Each directed link is represented with the following information:",
            "id": 14758,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14758/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37539/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222528+02:00",
            "action": 59,
            "target": "LSP.Links[i].Id: identification of the neighbor",
            "id": 14759,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14759/?format=api"
        },
        {
            "unit": "https://weblate.info.ucl.ac.be/api/units/37540/?format=api",
            "component": "https://weblate.info.ucl.ac.be/api/components/cnp3-ebook/principlesnetwork/?format=api",
            "translation": "https://weblate.info.ucl.ac.be/api/translations/cnp3-ebook/principlesnetwork/en/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2022-09-17T01:14:28.222565+02:00",
            "action": 59,
            "target": "LSP.Links[i].cost: cost of the link",
            "id": 14760,
            "action_name": "String updated in the repository",
            "url": "https://weblate.info.ucl.ac.be/api/changes/14760/?format=api"
        }
    ]
}