1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965
|
<pre>Network Working Group H. Tschofenig, Ed.
Request for Comments: 5580 Nokia Siemens Networks
Category: Standards Track F. Adrangi
Intel
M. Jones
A. Lior
Bridgewater
B. Aboba
Microsoft Corporation
August 2009
<span class="h1">Carrying Location Objects in RADIUS and Diameter</span>
Abstract
This document describes procedures for conveying access-network
ownership and location information based on civic and geospatial
location formats in Remote Authentication Dial-In User Service
(RADIUS) and Diameter.
The distribution of location information is a privacy-sensitive task.
Dealing with mechanisms to preserve the user's privacy is important
and is addressed in this document.
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (<a href="http://trustee.ietf.org/license-info">http://trustee.ietf.org/license-info</a>).
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
<span class="grey">Tschofenig, et al. Standards Track [Page 1]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Table of Contents
<a href="#section-1">1</a>. Introduction ....................................................<a href="#page-3">3</a>
<a href="#section-2">2</a>. Terminology .....................................................<a href="#page-3">3</a>
<a href="#section-3">3</a>. Delivery Methods for Location Information .......................<a href="#page-3">3</a>
<a href="#section-3.1">3.1</a>. Location Delivery Based on Out-of-Band Agreements ..........<a href="#page-4">4</a>
<a href="#section-3.2">3.2</a>. Location Delivery Based on Initial Request .................<a href="#page-5">5</a>
<a href="#section-3.3">3.3</a>. Location Delivery Based on Mid-Session Request .............<a href="#page-6">6</a>
<a href="#section-3.4">3.4</a>. Location Delivery in Accounting Messages ..................<a href="#page-10">10</a>
<a href="#section-4">4</a>. Attributes .....................................................<a href="#page-11">11</a>
<a href="#section-4.1">4.1</a>. Operator-Name Attribute ...................................<a href="#page-12">12</a>
<a href="#section-4.2">4.2</a>. Location-Information Attribute ............................<a href="#page-14">14</a>
<a href="#section-4.3">4.3</a>. Location-Data Attribute ...................................<a href="#page-16">16</a>
<a href="#section-4.3.1">4.3.1</a>. Civic Location Profile .............................<a href="#page-17">17</a>
<a href="#section-4.3.2">4.3.2</a>. Geospatial Location Profile ........................<a href="#page-17">17</a>
<a href="#section-4.4">4.4</a>. Basic-Location-Policy-Rules Attribute .....................<a href="#page-18">18</a>
<a href="#section-4.5">4.5</a>. Extended-Location-Policy-Rules Attribute ..................<a href="#page-20">20</a>
<a href="#section-4.6">4.6</a>. Location-Capable Attribute ................................<a href="#page-21">21</a>
<a href="#section-4.7">4.7</a>. Requested-Location-Info Attribute .........................<a href="#page-23">23</a>
<a href="#section-5">5</a>. Table of Attributes ............................................<a href="#page-28">28</a>
<a href="#section-6">6</a>. Diameter RADIUS Interoperability ...............................<a href="#page-30">30</a>
<a href="#section-7">7</a>. Security Considerations ........................................<a href="#page-31">31</a>
<a href="#section-7.1">7.1</a>. Communication Security ....................................<a href="#page-31">31</a>
<a href="#section-7.2">7.2</a>. Privacy Considerations ....................................<a href="#page-32">32</a>
<a href="#section-7.2.1">7.2.1</a>. RADIUS Client ......................................<a href="#page-33">33</a>
<a href="#section-7.2.2">7.2.2</a>. RADIUS Server ......................................<a href="#page-34">34</a>
<a href="#section-7.2.3">7.2.3</a>. RADIUS Proxy .......................................<a href="#page-34">34</a>
<a href="#section-7.3">7.3</a>. Identity Information and Location Information .............<a href="#page-34">34</a>
<a href="#section-8">8</a>. IANA Considerations ............................................<a href="#page-36">36</a>
<a href="#section-8.1">8.1</a>. New Registry: Operator Namespace Identifier ...............<a href="#page-36">36</a>
<a href="#section-8.2">8.2</a>. New Registry: Location Profiles ...........................<a href="#page-37">37</a>
<a href="#section-8.3">8.3</a>. New Registry: Location-Capable Attribute ..................<a href="#page-38">38</a>
<a href="#section-8.4">8.4</a>. New Registry: Entity Types ................................<a href="#page-39">39</a>
<a href="#section-8.5">8.5</a>. New Registry: Privacy Flags ...............................<a href="#page-39">39</a>
<a href="#section-8.6">8.6</a>. New Registry: Requested-Location-Info Attribute ...........<a href="#page-39">39</a>
<a href="#section-9">9</a>. Acknowledgments ................................................<a href="#page-40">40</a>
<a href="#section-10">10</a>. References ....................................................<a href="#page-42">42</a>
<a href="#section-10.1">10.1</a>. Normative References .....................................<a href="#page-42">42</a>
<a href="#section-10.2">10.2</a>. Informative References ...................................<a href="#page-42">42</a>
<a href="#appendix-A">Appendix A</a>. Matching with GEOPRIV Requirements ...................<a href="#page-45">45</a>
A.1. Distribution of Location Information at the User's
Home Network ..............................................<a href="#page-45">45</a>
A.2. Distribution of Location Information at the Visited
Network ...................................................<a href="#page-46">46</a>
<a href="#appendix-A.3">A.3</a>. Requirements Matching .....................................<a href="#page-47">47</a>
<span class="grey">Tschofenig, et al. Standards Track [Page 2]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>. Introduction</span>
This document defines attributes within RADIUS and Diameter that can
be used to convey location-related information within authentication
and accounting exchanges.
Location information may be useful in a number of scenarios.
Wireless networks (including wireless LAN) are being deployed in
public places such as airports, hotels, shopping malls, and coffee
shops by a diverse set of operators such as cellular network
operators, Wireless Internet Service Providers (WISPs), and fixed
broadband operators. In these situations, the home network may need
to know the location of the user in order to enable location-aware
billing, location-aware authorization, or other location-aware
services. Location information can also prove useful in other
situations (such as wired networks) where operator-network ownership
and location information may be needed by the home network.
In order to preserve user privacy, location information needs to be
protected against unauthorized access and distribution. Requirements
for access to location information are defined in [<a href="./rfc3693" title=""Geopriv Requirements"">RFC3693</a>]. The
model includes a Location Generator (LG) that creates location
information, a Location Server (LS) that authorizes access to
location information, a Location Recipient (LR) that requests and
receives information, and a Rule Maker (RM) that provides
authorization policies to the LS, which enforces access-control
policies on requests to location information. In <a href="#appendix-A">Appendix A</a>, the
requirements for a GEOPRIV using protocol [<a href="./rfc3693" title=""Geopriv Requirements"">RFC3693</a>] are compared to
the functionality provided by this document.
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>. Terminology</span>
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [<a href="./rfc2119" title=""Key words for use in RFCs to Indicate Requirement Levels"">RFC2119</a>].
RADIUS-specific terminology is borrowed from [<a href="./rfc2865" title=""Remote Authentication Dial In User Service (RADIUS)"">RFC2865</a>] and [<a href="./rfc2866" title=""RADIUS Accounting"">RFC2866</a>].
Terminology related to privacy issues, location information, and
authorization policy rules is taken from [<a href="./rfc3693" title=""Geopriv Requirements"">RFC3693</a>].
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>. Delivery Methods for Location Information</span>
The following exchanges show how location information is conveyed in
RADIUS. In describing the usage scenarios, we assume that privacy
policies allow location to be conveyed in RADIUS; however, as noted
in <a href="#section-6">Section 6</a>, similar exchanges can also take place within Diameter.
Privacy issues are discussed in <a href="#section-7.2">Section 7.2</a>.
<span class="grey">Tschofenig, et al. Standards Track [Page 3]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h3"><a class="selflink" id="section-3.1" href="#section-3.1">3.1</a>. Location Delivery Based on Out-of-Band Agreements</span>
Figure 1 shows an example message flow for delivering location
information during the network-access authentication and
authorization procedure. Upon a network-authentication request from
an access-network client, the Network Access Server (NAS) submits a
RADIUS Access-Request message that contains Location-Information
Attributes among other required attributes. In this scenario,
location information is attached to the Access-Request message
without an explicit request from the RADIUS server. Note that such
an approach with a prior agreement between the RADIUS client and the
RADIUS server is only applicable in certain environments, such as in
situations where the RADIUS client and server are within the same
administrative domain. The Basic-Location-Policy-Rules Attribute is
populated based on the defaults described in <a href="#section-4.4">Section 4.4</a>, unless it
has been explicitly configured otherwise.
+---------+ +---------+ +---------+
| | | Network | | RADIUS |
| User | | Access | | Server |
| | | Server | | |
+---------+ +---------+ +---------+
| | |
| Authentication phase | |
| begin | |
|---------------------->| |
| | |
| | Access-Request |
| | + Location-Information |
| | + Location-Data |
| | + Basic-Location-Policy-Rules|
| | + Operator-Name |
| |----------------------------->|
| | |
| | Access-Accept |
| |<-----------------------------|
| Authentication | |
| Success | |
|<----------------------| |
| | |
Figure 1: Location Delivery Based on Out-of-Band Agreements
<span class="grey">Tschofenig, et al. Standards Track [Page 4]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h3"><a class="selflink" id="section-3.2" href="#section-3.2">3.2</a>. Location Delivery Based on Initial Request</span>
If the RADIUS client provides a Location-Capable Attribute in the
Access-Request, then the RADIUS server MAY request location
information from the RADIUS client if it requires that information
for authorization and if location information was not provided in the
Access-Request. This exchange is shown in Figure 2. The inclusion
of the Location-Capable Attribute in an Access-Request message
indicates that the NAS is capable of providing location data in
response to an Access-Challenge. The subsequent Access-Challenge
message sent from the RADIUS server to the NAS provides a hint
regarding the type of desired Location-Information Attributes. The
NAS treats the Basic-Location-Policy-Rules and Extended-Location-
Policy-Rules Attributes as opaque data (e.g., it echoes these rules
provided by the server within the Access-Challenge back in the
Access-Request). In the shown message flow, the location attributes
are then provided in the subsequent Access-Request message. When
evaluating this Access-Request message, the authorization procedure
at the RADIUS server might be based on a number of criteria,
including the newly defined attributes listed in <a href="#section-4">Section 4</a>.
<span class="grey">Tschofenig, et al. Standards Track [Page 5]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
+---------+ +---------+ +---------+
| | | Network | | RADIUS |
| User | | Access | | Server |
| | | Server | | |
+---------+ +---------+ +---------+
| | |
| Authentication phase | |
| begin | |
|---------------------->| |
| | |
| | Access-Request |
| | + Location-Capable |
| |--------------------------------->|
| | |
| | Access-Challenge |
| | + Basic-Location-Policy-Rules |
| | + Extended-Location-Policy-Rules|
| | + Requested-Location-Info |
| |<---------------------------------|
| | |
| | Access-Request |
| | + Location-Information |
| | + Location-Data |
| | + Basic-Location-Policy-Rules |
| | + Extended-Location-Policy-Rules|
| |--------------------------------->|
| | |
: : :
: Multiple Protocol Exchanges to perform :
: Authentication, Key Exchange, and Authorization :
: ...continued... :
: : :
| | |
| | Access-Accept |
| |<---------------------------------|
| Authentication | |
| Success | |
|<----------------------| |
| | |
Figure 2: Location Delivery Based on Initial Request
<span class="h3"><a class="selflink" id="section-3.3" href="#section-3.3">3.3</a>. Location Delivery Based on Mid-Session Request</span>
The on-demand, mid-session location-delivery method utilizes the
Change-of-Authorization Request (CoA-Request) message and the CoA-NAK
(CoA-Negative Acknowledgement), defined in [<a href="./rfc5176" title=""Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)"">RFC5176</a>]. At any time
<span class="grey">Tschofenig, et al. Standards Track [Page 6]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
during the session, the Dynamic Authorization Client MAY send a CoA-
Request containing session-identification attributes to the NAS
(i.e., Dynamic Authorization Server).
In order to enable the on-demand, mid-session location-delivery
method, the RADIUS server MUST return an instance of the Requested-
Location-Info Attribute with the 'FUTURE_REQUESTS' flag set and
instances of the Basic-Location-Policy-Rules and Extended-Location-
Policy-Rules Attributes in the Access-Accept message for the session.
Upon receipt of a CoA-Request message containing a Service-Type
Attribute with value "Authorize Only" for the same session, the NAS
MUST include location information and echo the previously received
Basic-Location-Policy-Rules and Extended-Location-Policy-Rules
Attributes in the subsequent Access-Request message.
Upon receiving the Access-Request message containing the Service-Type
Attribute with a value of Authorize-Only from the NAS, the RADIUS
server responds with either an Access-Accept or an Access-Reject
message.
The use of dynamic authorization [<a href="./rfc5176" title=""Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)"">RFC5176</a>] is necessary when location
information is needed on-demand and cannot be obtained from
accounting information in a timely fashion.
Figure 3 shows the above-described approach graphically.
+---------------+ +---------------+ +------+
| Dynamic | | Dynamic | |RADIUS|
| Authorization | | Authorization | |Server|
| Server/NAS | | Client | | |
+---------------+ +---------------+ +------+
| | |
| Access-Request | |
| + Location-Capable | |
|----------------------------------------------------------->|
| | |
| Access-Challenge | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
| + Requested-Location-Info | |
|<-----------------------------------------------------------|
| | |
| Access-Request | |
| + Location-Information | |
| + Location-Data | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|----------------------------------------------------------->|
<span class="grey">Tschofenig, et al. Standards Track [Page 7]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
| | |
| | |
: | :
: Multiple Protocol Exchanges to perform :
: Authentication, Key Exchange, and Authorization :
: ...continued... | :
: | :
| | |
| | |
| Access-Accept | |
| + Requested-Location-Info | |
(FUTURE_REQUESTS,...) | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|<-----------------------------------------------------------|
| | |
: : :
: <<Some time later>> : :
: : :
| | |
| CoA + Service-Type "Authorize Only" + State | |
|<--------------------------------------------| |
| | |
| CoA NAK + Service-Type "Authorize Only" | |
| + State | |
| + Error-Cause "Request Initiated" | |
|-------------------------------------------->| |
| | |
| Access-Request | |
| + Service-Type "Authorize Only" | |
| + State | |
| + Location-Information | |
| + Location-Data | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|----------------------------------------------------------->|
| Access-Accept | |
|<-----------------------------------------------------------|
| | |
Figure 3: Location Delivery Based on CoA with
Service-Type 'Authorize Only'
When the Dynamic Authorization Client wants to change the values of
the requested location information, or set the values of the
requested location information for the first time, it may do so
without triggering a reauthorization. Assuming that the NAS had
previously sent an Access-Request containing a Location-Capable
<span class="grey">Tschofenig, et al. Standards Track [Page 8]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-9" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Attribute, the Dynamic Authorization Client (DAC) can send a CoA-
Request to the NAS without a Service-Type Attribute, but include the
NAS identifiers and session identifiers as per [<a href="./rfc5176" title=""Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)"">RFC5176</a>] and the
Requested-Location-Info, Basic-Location-Policy-Rules, and Extended-
Location-Policy-Rules Attributes. The Requested-Location-Info,
Basic-Location-Policy-Rules, and Extended-Location-Policy-Rules
Attributes MUST NOT be used for session identification.
Figure 4 shows this approach graphically.
+---------------+ +---------------+ +------+
| Dynamic | | Dynamic | |RADIUS|
| Authorization | | Authorization | |Server|
| Server/NAS | | Client | | |
+---------------+ +---------------+ +------+
| | |
| | |
| Access-Request | |
| + Location-Capable | |
|----------------------------------------------------------->|
| | |
| Access-Challenge | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
| + Requested-Location-Info | |
|<-----------------------------------------------------------|
| | |
| Access-Request | |
| + Location-Information | |
| + Location-Data | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|----------------------------------------------------------->|
| | |
| | |
: | :
: Multiple Protocol Exchanges to perform :
: Authentication, Key Exchange, and Authorization :
: ...continued... | :
: | :
| | |
| | |
| Access-Accept | |
| + Requested-Location-Info | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|<-----------------------------------------------------------|
<span class="grey">Tschofenig, et al. Standards Track [Page 9]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-10" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
| | |
: : :
: <<Some time later>> : :
: : :
| | |
| CoA | |
| + Requested-Location-Info | |
| + Basic-Location-Policy-Rules | |
| + Extended-Location-Policy-Rules | |
|<--------------------------------------------| |
| | |
| CoA ACK | |
|-------------------------------------------->| |
| | |
: : :
: <<Further exchanges later>> : :
: : :
Figure 4: Location Delivery Based on CoA
<span class="h3"><a class="selflink" id="section-3.4" href="#section-3.4">3.4</a>. Location Delivery in Accounting Messages</span>
Location information may also be reported in accounting messages.
Accounting messages are generated when the session starts, when the
session stops, and periodically during the lifetime of the session.
Accounting messages may also be generated when the user roams during
handoff.
Accounting information may be needed by the billing system to
calculate the user's bill. For example, there may be different
tariffs or tax rates applied based on the location.
If the RADIUS server needs to obtain location information in
accounting messages, then it needs to include a Requested-Location-
Info Attribute with the Access-Accept message. The Basic-Location-
Policy-Rules and the Extended-Location-Policy-Rules Attributes are to
be echoed in the Accounting-Request if indicated in the Access-
Accept.
Figure 5 shows the message exchange.
<span class="grey">Tschofenig, et al. Standards Track [Page 10]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-11" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
+---------+ +---------+ +---------+
| | | Network | | RADIUS |
| User | | Access | | Server |
| | | Server | | |
+---------+ +---------+ +---------+
| | |
: : :
: Initial Protocol Interaction :
: (details omitted) :
: : :
| | |
| | Access-Accept |
| | + Requested-Location-Info |
| | + Basic-Location-Policy-Rules |
| | + Extended-Location-Policy-Rules|
| |<---------------------------------|
| Authentication | |
| Success | |
|<----------------------| |
| | |
| | Accounting-Request |
| | + Location-Information |
| | + Location-Data |
| | + Basic-Location-Policy-Rules |
| | + Extended-Location-Policy-Rules|
| |--------------------------------->|
| | |
| | Accounting-Response |
| |<---------------------------------|
| | |
Figure 5: Location Delivery in Accounting Messages
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. Attributes</span>
It is important to note that the location-specific parts of the
attributes defined below are not meant to be processed by the RADIUS
server. Instead, a location-server-specific component used in
combination with the RADIUS server is responsible for receiving,
processing, and further distributing location information (in
combination with proper access control and privacy protection). As
such, from a RADIUS server point of view, location information is
treated as opaque data.
<span class="grey">Tschofenig, et al. Standards Track [Page 11]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-12" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h3"><a class="selflink" id="section-4.1" href="#section-4.1">4.1</a>. Operator-Name Attribute</span>
This attribute carries the operator namespace identifier and the
operator name. The operator name is combined with the namespace
identifier to uniquely identify the owner of an access network. The
value of the Operator-Name is a non-NULL terminated text whose length
MUST NOT exceed 253 bytes.
The Operator-Name Attribute SHOULD be sent in Access-Request and
Accounting-Request messages where the Acc-Status-Type is set to
Start, Interim, or Stop.
A summary of the Operator-Name Attribute is shown below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Text ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Text (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
126 - Operator-Name
Length:
>= 4
Text:
The format is shown below. The data type of this field is a text.
All fields are transmitted from left to right:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Namespace ID | Operator-Name ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Operator-Name ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
<span class="grey">Tschofenig, et al. Standards Track [Page 12]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-13" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Namespace ID:
The value within this field contains the operator namespace
identifier. The Namespace ID value is encoded in ASCII.
Example: '1' (0x31) for REALM
Operator-Name:
The text field of variable length contains an Access Network
Operator Name. This field is a RADIUS-based data type of Text.
The Namespace ID field provides information about the operator
namespace. This document defines four values for this attribute,
which are listed below. Additional namespace identifiers must be
registered with IANA (see <a href="#section-8.1">Section 8.1</a>) and must be associated with an
organization responsible for managing the namespace.
TADIG ('0' (0x30)):
This namespace can be used to indicate operator names based on
Transferred Account Data Interchange Group (TADIG) codes, as
defined in [<a href="#ref-GSM" title=""TADIG Naming Conventions"">GSM</a>]. TADIG codes are assigned by the TADIG Working
Group within the Global System for Mobile Communications (GSM)
Association. The TADIG code consists of two fields, with a total
length of five ASCII characters consisting of a three-character
country code and a two-character alphanumeric operator (or
company) ID.
REALM ('1' (0x31)):
The REALM operator namespace can be used to indicate operator
names based on any registered domain name. Such names are
required to be unique, and the rights to use a given realm name
are obtained coincident with acquiring the rights to use a
particular Fully Qualified Domain Name (FQDN). Since this
operator is limited to ASCII, any registered domain name that
contains non-ASCII characters must be converted to ASCII. The
Punycode encoding [<a href="./rfc3492" title=""Punycode: A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA)"">RFC3492</a>] is used for this purpose.
E212 ('2' (0x32)):
The E212 namespace can be used to indicate operator names based on
the Mobile Country Code (MCC) and Mobile Network Code (MNC)
defined in [<a href="#ref-ITU212" title=""The international identification plan for mobile terminals and mobile users"">ITU212</a>]. The MCC/MNC values are assigned by the
Telecommunications Standardization Bureau (TSB) within the ITU-T
<span class="grey">Tschofenig, et al. Standards Track [Page 13]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-14" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
and by designated administrators in different countries. The E212
value consists of three ASCII digits containing the MCC, followed
by two or three ASCII digits containing the MNC.
ICC ('3' (0x33)):
The ICC namespace can be used to indicate operator names based on
International Telecommunication Union (ITU) Carrier Codes (ICC)
defined in [<a href="#ref-ITU1400" title=""Designations for interconnections among operators' networks"">ITU1400</a>]. ICC values are assigned by national
regulatory authorities and are coordinated by the
Telecommunication Standardization Bureau (TSB) within the ITU
Telecommunication Standardization Sector (ITU-T). When using the
ICC namespace, the attribute consists of three uppercase ASCII
characters containing a three-letter alphabetic country code, as
defined in [<a href="#ref-ISO" title=""Codes for the representation of names of countries and their subdivisions - Part 1: Country codes"">ISO</a>], followed by one to six uppercase alphanumeric
ASCII characters containing the ICC itself.
<span class="h3"><a class="selflink" id="section-4.2" href="#section-4.2">4.2</a>. Location-Information Attribute</span>
The Location-Information Attribute MAY be sent in the Access-Request
message, the Accounting-Request message, both of these messages, or
no message. For the Accounting-Request message, the Acc-Status-Type
may be set to Start, Interim, or Stop.
The Location-Information Attribute provides meta-data about the
location information, such as sighting time, time-to-live, location-
determination method, etc.
The format is shown below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | String ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| String (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
127 - Location-Information
Length:
>= 23
<span class="grey">Tschofenig, et al. Standards Track [Page 14]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-15" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
String:
The format is shown below. The data type of this field is a
string. All fields are transmitted from left to right:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | Code | Entity |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sighting Time ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sighting Time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time-to-Live ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time-to-Live |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Method ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Index (16 bits):
The 16-bit unsigned integer value allows this attribute to provide
information relating to the information included in the Location-
Data Attribute to which it refers (via the Index).
Code (8 bits):
This field indicates the content of the location profile carried
in the Location-Data Attribute. Two profiles are defined in this
document -- namely, a civic location profile (see <a href="#section-4.3.1">Section 4.3.1</a>)
that uses value (0) and a geospatial location profile (see
<a href="#section-4.3.2">Section 4.3.2</a>) that uses the value (1).
Entity (8 bits):
This field encodes which location this attribute refers to as an
unsigned 8-bit integer value. Location information can refer to
different entities. This document registers two entity values,
namely:
Value (0) describes the location of the user's client device.
Value (1) describes the location of the RADIUS client.
The registry used for these values is established by this
document, see <a href="#section-8.4">Section 8.4</a>.
<span class="grey">Tschofenig, et al. Standards Track [Page 15]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-16" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Sighting Time (64 bits)
This field indicates when the location information was accurate.
The data type of this field is a string, and the content is
expressed in the 64-bit Network Time Protocol (NTP) timestamp
format [<a href="./rfc1305" title=""Network Time Protocol (Version 3) Specification, Implementation"">RFC1305</a>].
Time-to-Live (64 bits):
This field gives a hint regarding for how long location
information should be considered current. The data type of this
field is a string and the content is expressed in the 64-bit
Network Time Protocol (NTP) timestamp format [<a href="./rfc1305" title=""Network Time Protocol (Version 3) Specification, Implementation"">RFC1305</a>]. Note that
the Time-to-Live field is different than the Retention Expires
field used in the Basic-Location-Policy-Rules Attribute, see
<a href="#section-4.4">Section 4.4</a>. The Retention Expires field indicates the time the
recipient is no longer permitted to possess the location
information.
Method (variable):
Describes the way that the location information was determined.
This field MUST contain the value of exactly one IANA-registered
'method' token [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>].
The length of the Location-Information Attribute MUST NOT exceed 253
octets.
<span class="h3"><a class="selflink" id="section-4.3" href="#section-4.3">4.3</a>. Location-Data Attribute</span>
The Location-Data Attribute MAY be sent in Access-Request and
Accounting-Request messages. For the Accounting-Request message, the
Acc-Status-Type may be set to Start, Interim, or Stop.
The format is shown below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | String ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| String (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
128 - Location-Data
<span class="grey">Tschofenig, et al. Standards Track [Page 16]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-17" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Length:
>= 5
String:
The format is shown below. The data type of this field is a
string. All fields are transmitted from left to right:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Index (16 bits):
The 16-bit unsigned integer value allows this attribute to
associate the Location-Data Attribute with the Location-
Information Attributes.
Location (variable):
The format of the location data depends on the location profile.
This document defines two location profiles. Details of the
location profiles are described below.
<span class="h4"><a class="selflink" id="section-4.3.1" href="#section-4.3.1">4.3.1</a>. Civic Location Profile</span>
Civic location is a popular way to describe the location of an
entity. This section defines the civic location-information profile
corresponding to the value (0) indicated in the Code field of the
Location-Information Attribute. The location format is based on the
encoding format defined in <a href="./rfc4776#section-3.1">Section 3.1 of [RFC4776]</a>, whereby the
first 3 octets are not put into the Location field of the above-
described RADIUS Location-Data Attribute (i.e., the code for the DHCP
option, the length of the DHCP option, and the 'what' element are not
included).
<span class="h4"><a class="selflink" id="section-4.3.2" href="#section-4.3.2">4.3.2</a>. Geospatial Location Profile</span>
This section defines the geospatial location-information profile
corresponding to the value (1) indicated in the Code field of the
Location-Information Attribute. Geospatial location information is
encoded as an opaque object, and the format is based on the Location
<span class="grey">Tschofenig, et al. Standards Track [Page 17]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-18" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Configuration Information (LCI) format defined in <a href="./rfc3825#section-2">Section 2 of
[RFC3825]</a> but starts with the third octet (i.e., the code for the
DHCP option and the length field is not included).
<span class="h3"><a class="selflink" id="section-4.4" href="#section-4.4">4.4</a>. Basic-Location-Policy-Rules Attribute</span>
The Basic-Location-Policy-Rules Attribute MAY be sent in Access-
Request, Access-Accept, Access-Challenge, Change-of-Authorization,
and Accounting-Request messages.
Policy rules control the distribution of location information. In
order to understand and process the Basic-Location-Policy-Rules
Attribute, RADIUS clients are obligated to utilize a default value of
Basic-Location-Policy-Rules, unless explicitly configured otherwise,
and to echo the Basic-Location-Policy-Rules Attribute that they
receive from a server. As a default, the Note Well field does not
carry a pointer to human-readable privacy policies, the
retransmission-allowed is set to zero (0), i.e., further distribution
is not allowed, and the Retention Expires field is set to 24 hours.
With regard to authorization policies, this document reuses work done
in [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>] and encodes those policies in a non-XML format. Two
fields ('Sighting Time' and 'Time-to-Live') are additionally included
in the Location-Information Attribute to conform to the GEOPRIV
requirements <a href="./rfc3693#section-2.7">[RFC3693], Section 2.7</a>.
The format of the Basic-Location-Policy-Rules Attribute is shown
below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | String ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| String (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
129 - Basic-Location-Policy-Rules
Length:
>= 12
<span class="grey">Tschofenig, et al. Standards Track [Page 18]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-19" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
String:
The format is shown below. The data type of this field is a
string. All fields are transmitted from left to right:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags | Retention Expires ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Retention Expires ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Retention Expires | Note Well ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Note Well ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This document reuses fields from the <a href="./rfc4119">RFC 4119</a> [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>] 'usage-rules'
element. These fields have the following meaning:
Flags (16 bits):
The Flags field is a bit mask. Only the first bit (R) is defined
in this document, and it corresponds to the Retransmission Allowed
field:
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|o o o o o o o o o o o o o o o|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
R = Retransmission Allowed
o = reserved.
All reserved bits MUST be zero. When the value of the Retransmission
Allowed field is set to zero (0), then the recipient of this Location
Object is not permitted to share the enclosed location information,
or the object as a whole, with other parties. The value of '1'
allows this attribute to share the location information with other
parties by considering the extended policy rules.
Retention Expires (64 bits):
This field specifies an absolute date at which time the Recipient
is no longer permitted to possess the location information. The
data type of this field is a string and the format is a 64-bit NTP
timestamp [<a href="./rfc1305" title=""Network Time Protocol (Version 3) Specification, Implementation"">RFC1305</a>].
<span class="grey">Tschofenig, et al. Standards Track [Page 19]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-20" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Note Well (variable):
This field contains a URI that points to human-readable privacy
instructions. The data type of this field is a string. This
field is useful when location information is distributed to third-
party entities, which can include humans in a location-based
service. RADIUS entities are not supposed to process this field.
Whenever a Location Object leaves the RADIUS ecosystem, the URI in
the Note Well Attribute MUST be expanded to the human-readable
text. For example, when the Location Object is transferred to a
SIP-based environment, then the human-readable text is placed into
the 'note-well' element of the 'usage-rules' element contained in
the PIDF-LO (Presence Information Data Format - Location Object)
document (see [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>]). The Note Well field may be empty.
<span class="h3"><a class="selflink" id="section-4.5" href="#section-4.5">4.5</a>. Extended-Location-Policy-Rules Attribute</span>
The Extended-Location-Policy-Rules Attribute MAY be sent in Access-
Request, Access-Accept, Access-Challenge, Access-Reject, Change-of-
Authorization, and Accounting-Request messages.
The Ruleset Reference field of this attribute is of variable length.
It contains a URI that indicates where the richer ruleset can be
found. This URI SHOULD use the HTTPS URI scheme. As a deviation
from [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>], this field only contains a reference and does not
carry an attached, extended ruleset. This modification is motivated
by the size limitations imposed by RADIUS.
In order to understand and process the Extended-Location-Policy-Rules
Attribute, RADIUS clients are obligated to attach the URI to the
Extended-Location-Policy-Rules Attribute when they are explicitly
configured to do so, and to echo the Extended-Location-Policy-Rules
Attribute that they receive from a server. There is no expectation
that RADIUS clients will need to retrieve data at the URL specified
in the attribute or to parse the XML policies.
The format of the Extended-Location-Policy-Rules Attribute is shown
below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | String ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| String (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
<span class="grey">Tschofenig, et al. Standards Track [Page 20]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-21" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Type:
130 - Extended-Location-Policy-Rules
Length:
>= 3
String:
This field is at least two octets in length, and the format is
shown below. The data type of this field is a string. The fields
are transmitted from left to right:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ruleset Reference ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ruleset Reference:
This field contains a URI that points to the policy rules.
<span class="h3"><a class="selflink" id="section-4.6" href="#section-4.6">4.6</a>. Location-Capable Attribute</span>
The Location-Capable Attribute allows an NAS (or client function of a
proxy server) to indicate support for the functionality specified in
this document. The Location-Capable Attribute with the value for
'Location Capable' MUST be sent with the Access-Request messages, if
the NAS supports the functionality described in this document and is
capable of sending location information. A RADIUS server MUST NOT
challenge for location information unless the Location-Capable
Attribute has been sent to it.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Integer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Integer (cont.) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
131 - Location-Capable Attribute
<span class="grey">Tschofenig, et al. Standards Track [Page 21]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-22" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Length:
6
Integer:
The content of the Integer field encodes the requested
capabilities. Each capability value represents a bit position.
This document specifies the following capabilities.
Name:
CIVIC_LOCATION
Description:
The RADIUS client uses the CIVIC_LOCATION to indicate that it is
able to return civic location based on the location profile
defined in <a href="#section-4.3.1">Section 4.3.1</a>.
Numerical Value:
A numerical value of this token is '1'.
Name:
GEO_LOCATION
Description:
The RADIUS client uses the GEO_LOCATION to indicate that it is
able to return geodetic location based on the location profile
defined in <a href="#section-4.3.2">Section 4.3.2</a>.
Numerical Value:
A numerical value of this token is '2'.
Name:
USERS_LOCATION
<span class="grey">Tschofenig, et al. Standards Track [Page 22]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-23" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Description:
The numerical value representing USERS_LOCATION indicates that the
RADIUS client is able to provide a Location-Information Attribute
with the Entity Attribute expressing the value of zero (0), i.e.,
the RADIUS client is capable of returning the location information
of the user's client device.
Numerical Value:
A numerical value of this token is '4'.
Name:
NAS_LOCATION
Description:
The numerical value representing NAS_LOCATION indicates that the
RADIUS client is able to provide a Location-Information Attribute
that contains location information with the Entity Attribute
expressing the value of one (1), i.e., the RADIUS client is
capable of returning the location information of the NAS.
Numerical Value:
A numerical value of this token is '8'.
<span class="h3"><a class="selflink" id="section-4.7" href="#section-4.7">4.7</a>. Requested-Location-Info Attribute</span>
The Requested-Location-Info Attribute allows the RADIUS server to
indicate which location information about which entity it wants to
receive. The latter aspect refers to the entities that are indicated
in the Entity field of the Location-Information Attribute.
The Requested-Location-Info Attribute MAY be sent in an Access-
Accept, Access-Challenge, or Change-of-Authorization packet.
If the RADIUS server wants to dynamically decide on a per-request
basis to ask for location information from the RADIUS client, then
the following cases need to be differentiated. If the RADIUS client
and the RADIUS server have agreed out-of-band to mandate the transfer
of location information for every network-access authentication
request, then the processing listed below is not applicable.
<span class="grey">Tschofenig, et al. Standards Track [Page 23]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-24" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
o If the RADIUS server requires location information for computing
the authorization decision and the RADIUS client does not provide
it with the Access-Request message, then the Requested-Location-
Info Attribute is attached to the Access-Challenge with a hint
about what is required.
o If the RADIUS server does not receive the requested information in
response to the Access-Challenge (including the Requested-
Location-Info Attribute), then the RADIUS server may respond with
an Access-Reject message with an Error-Cause Attribute (including
the "Location-Info-Required" value).
o If the RADIUS server would like location information in the
Accounting-Request message but does not require it for computing
an authorization decision, then the Access-Accept message MUST
include a Required-Info Attribute. This is typically the case
when location information is used only for billing. The RADIUS
client SHOULD attach location information, if available, to the
Accounting-Request (unless authorization policies dictate
something different).
If the RADIUS server does not send a Requested-Location-Info
Attribute, then the RADIUS client MUST NOT attach location
information to messages towards the RADIUS server. The user's
authorization policies, if available, MUST be consulted by the RADIUS
server before requesting location information delivery from the
RADIUS client.
Figure 6 shows a simple protocol exchange where the RADIUS server
indicates the desire to obtain location information, namely civic
location information of the user, to grant access. Since the
Requested-Location-Info Attribute is attached to the Access-
Challenge, the RADIUS server indicates that location information is
required for computing an authorization decision.
<span class="grey">Tschofenig, et al. Standards Track [Page 24]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-25" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
+---------+ +---------+
| RADIUS | | RADIUS |
| Client | | Server |
+---------+ +---------+
| |
| |
| Access-Request |
| + Location-Capable |
| ('CIVIC_LOCATION', |
| 'GEO_LOCATION', |
| 'NAS_LOCATION', |
| 'USERS_LOCATION') |
|--------------------------------->|
| |
| Access-Challenge |
| + Requested-Location-Info |
| ('CIVIC_LOCATION', |
| 'USERS_LOCATION') |
| + Basic-Location-Policy-Rules |
| + Extended-Location-Policy-Rules |
|<---------------------------------|
| |
| Access-Request |
| + Location-Information |
| + Location-Data |
| + Basic-Location-Policy-Rules |
| + Extended-Location-Policy-Rules |
|--------------------------------->|
| |
| .... |
Figure 6: RADIUS Server Requesting Location Information
The Requested-Location-Info Attribute MUST be sent by the RADIUS
server, in the absence of an out-of-band agreement, if it wants the
RADIUS client to return location information and if authorization
policies permit it. This Requested-Location-Info Attribute MAY
appear in the Access-Accept or in the Access-Challenge message.
A summary of the attribute is shown below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Integer ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Integer (cont.) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
<span class="grey">Tschofenig, et al. Standards Track [Page 25]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-26" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Type:
132 - Requested-Location-Info Attribute
Length:
6
Integer:
The content of the Integer field encodes the requested information
attributes. Each capability value represents a bit position.
This document specifies the following capabilities:
Name:
CIVIC_LOCATION
Description:
The RADIUS server uses the Requested-Location-Info Attribute with
the value set to CIVIC_LOCATION to request specific location
information from the RADIUS client. The numerical value
representing CIVIC_LOCATION requires the RADIUS client to attach
civic location attributes. CIVIC_LOCATION refers to the location
profile defined in <a href="#section-4.3.1">Section 4.3.1</a>.
Numerical Value:
A numerical value of this token is '1'.
Name:
GEO_LOCATION
Description:
The RADIUS server uses the Requested-Location-Info Attribute with
the value set to GEO_LOCATION to request specific location
information from the RADIUS client. The numerical value
representing GEO_LOCATION requires the RADIUS client to attach
geospatial location attributes. GEO_LOCATION refers to the
location profile described in <a href="#section-4.3.2">Section 4.3.2</a>.
Numerical Value:
A numerical value of this token is '2'.
<span class="grey">Tschofenig, et al. Standards Track [Page 26]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-27" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Name:
USERS_LOCATION
Description:
The numerical value representing USERS_LOCATION indicates that the
RADIUS client MUST send a Location-Information Attribute with the
Entity Attribute expressing the value of zero (0). Hence, there
is a one-to-one relationship between the USERS_LOCATION token and
the value of zero (0) of the Entity Attribute inside the Location-
Information Attribute. A value of zero indicates that the
location information in the Location-Information Attribute refers
to the user's client device.
Numerical Value:
A numerical value of this token is '4'.
Name:
NAS_LOCATION
Description:
The numerical value representing NAS_LOCATION indicates that the
RADIUS client MUST send a Location-Information Attribute that
contains location information with the Entity Attribute expressing
the value of one (1). Hence, there is a one-to-one relationship
between the NAS_LOCATION token and the value of one (1) of the
Entity Attribute inside the Location-Information Attribute. A
value of one indicates that the location information in the
Location-Information Attribute refers to the RADIUS client.
Numerical Value:
A numerical value of this token is '8'.
Name:
FUTURE_REQUESTS
Description:
The numerical value representing FUTURE_REQUESTS indicates that
the RADIUS client MUST provide future Access-Requests for the same
session with the same type of information as returned in the
initial Access-Request message.
<span class="grey">Tschofenig, et al. Standards Track [Page 27]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-28" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Numerical Value:
A numerical value of this token is '16'.
Name:
NONE
Description:
The RADIUS server uses this token to request that the RADIUS
client stop sending location information.
Numerical Value:
A numerical value of this token is '32'.
If neither the NAS_LOCATION nor the USERS_LOCATION bit is set, then
per-default the location of the user's client device is returned (if
authorization policies allow it). If both the NAS_LOCATION and the
USERS_LOCATION bits are set, then the returned location information
has to be put into separate attributes. If neither the
CIVIC_LOCATION nor the GEO_LOCATION bit is set in the Requested-
Location-Info Attribute, then no location information is returned.
If both the CIVIC_LOCATION and the GEO_LOCATION bits are set, then
the location information has to be put into separate attributes. The
value of NAS_LOCATION and USERS_LOCATION refers to the location
information requested via CIVIC_LOCATION and GEO_LOCATION.
As an example, if the bits for NAS_LOCATION, USERS_LOCATION, and
GEO_LOCATION are set, then the location information of the RADIUS
client and the users' client device are returned in a geospatial-
location format.
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>. Table of Attributes</span>
The following table provides a guide to which attributes may be found
in which RADIUS messages, and in what quantity.
<span class="grey">Tschofenig, et al. Standards Track [Page 28]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-29" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Request Accept Reject Challenge Accounting # Attribute
Request
0-1 0-1 0 0 0+ 126 Operator-Name
0+ 0 0 0 0+ 127 Location-Information
0+ 0 0 0 0+ 128 Location-Data
0-1 0-1 0-1 0-1 0-1 129 Basic-Location-
Policy-Rules
0-1 0-1 0-1 0-1 0-1 130 Extended-Location-
Policy-Rules
0-1 0 0 0 0 131 Location-Capable
0 0-1 0 0-1 0 132 Requested-Location-Info
0 0 0-1 0 0 101 Error-Cause (*)
(*) Note: The Error-Cause Attribute contains the value for the
'Location-Info-Required' error.
Change-of-Authorization Messages
Request ACK NAK # Attribute
0-1 0 0 129 Basic-Location-Policy-Rules
0-1 0 0 130 Extended-Location-Policy-Rules
0-1 0 0 132 Requested-Location-Info
Legend:
0 This attribute MUST NOT be present.
0+ Zero or more instances of this attribute MAY be present.
0-1 Zero or one instance of this attribute MAY be present.
1 Exactly one instance of this attribute MUST be present.
1+ One or more of these attributes MUST be present.
Figure 7: Table of Attributes
The Error-Cause Attribute is defined in [<a href="./rfc5176" title=""Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)"">RFC5176</a>].
The Location-Information and the Location-Data Attribute MAY appear
more than once. For example, if the server asks for civic and
geospatial location information, two Location-Information Attributes
need to be sent.
The attributes defined in this document are not used in any messages
other than the ones listed in Figure 7.
IANA allocated a new value (509) from the Error-Cause registry with
the semantics of 'Location-Info-Required'.
<span class="grey">Tschofenig, et al. Standards Track [Page 29]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-30" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>. Diameter RADIUS Interoperability</span>
When used in Diameter, the attributes defined in this specification
can be used as Diameter attribute-value pairs (AVPs) from the code
space 1-255 (RADIUS attribute-compatibility space). No additional
Diameter code values are therefore allocated. The data types and
flag rules, as defined in [<a href="./rfc3588" title=""Diameter Base Protocol"">RFC3588</a>], for the Diameter AVPs are as
follows:
+---------------------+
| AVP Flag rules |
+----+-----+------+-----+----+
| | |SHOULD| MUST| |
Attribute Name Value Type |MUST| MAY | NOT | NOT|Encr|
+---------------------------------+----+-----+------+-----+----+
|Operator-Name OctetString| | P | | V,M | Y |
|Location-Information OctetString| | P | | V,M | Y |
|Location-Data OctetString| | P | | V,M | Y |
|Basic-Location- | | | | | |
| Policy-Rules OctetString| | P | | V,M | Y |
|Extended-Location- | | | | | |
| Policy-Rules OctetString| | P | | V,M | Y |
|Requested- | | | | | |
| Location-Info OctetString| | P | | V,M | Y |
|Location-Capable OctetString| | P | | V,M | Y |
+---------------------------------+----+-----+------+-----+----+
The RADIUS attributes in this specification have no special
translation requirements for Diameter-to-RADIUS or RADIUS-to-Diameter
gateways; they are copied as is, except for changes relating to
headers, alignment, and padding. See also <a href="./rfc3588#section-4.1">Section 4.1 of [RFC3588]</a>
and <a href="./rfc4005#section-9">Section 9 of [RFC4005]</a>.
What this specification says about the applicability of the
attributes for RADIUS Access-Request packets applies in Diameter to
AA-Request [<a href="./rfc4005" title=""Diameter Network Access Server Application"">RFC4005</a>] or Diameter-EAP-Request [<a href="./rfc4072" title=""Diameter Extensible Authentication Protocol (EAP) Application"">RFC4072</a>]. What is said
about Access-Challenge applies in Diameter to AA-Answer [<a href="./rfc4005" title=""Diameter Network Access Server Application"">RFC4005</a>] or
Diameter-EAP-Answer [<a href="./rfc4072" title=""Diameter Extensible Authentication Protocol (EAP) Application"">RFC4072</a>] with the Result-Code AVP set to
DIAMETER_MULTI_ROUND_AUTH. What is said about Access-Accept applies
in Diameter to AA-Answer or Diameter-EAP-Answer messages that
indicate success. Similarly, what is said about RADIUS Access-Reject
packets applies in Diameter to AA-Answer or Diameter-EAP-Answer
messages that indicate failure.
What is said about CoA-Request applies in Diameter to Re-Auth-Request
[<a href="./rfc4005" title=""Diameter Network Access Server Application"">RFC4005</a>].
<span class="grey">Tschofenig, et al. Standards Track [Page 30]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-31" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
What is said about Accounting-Request applies in Diameter to
Accounting-Request [<a href="./rfc4005" title=""Diameter Network Access Server Application"">RFC4005</a>] as well.
Note that these AVPs may be used by Diameter applications other than
<a href="./rfc4005">RFC 4005</a> [<a href="./rfc4005" title=""Diameter Network Access Server Application"">RFC4005</a>] and <a href="./rfc4072">RFC 4072</a> [<a href="./rfc4072" title=""Diameter Extensible Authentication Protocol (EAP) Application"">RFC4072</a>]. The above-mentioned
applications are, however, likely to be relevant in the context of
this document.
<span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>. Security Considerations</span>
A number of security aspects are relevant for the distribution of
location information via RADIUS. These aspects are discussed in
separate subsections.
<span class="h3"><a class="selflink" id="section-7.1" href="#section-7.1">7.1</a>. Communication Security</span>
Requirements for the protection of a Location Object are defined in
[<a href="./rfc3693" title=""Geopriv Requirements"">RFC3693</a>] -- namely, mutual end-point authentication, data object
integrity, data object confidentiality, and replay protection.
If no authentication, integrity, and replay protection between the
participating RADIUS entities is provided, then adversaries can spoof
and modify transmitted attributes. Two security mechanisms are
proposed for RADIUS:
o [<a href="./rfc2865" title=""Remote Authentication Dial In User Service (RADIUS)"">RFC2865</a>] proposes the usage of a static key that raised concerns
regarding the lack of dynamic key management. At the time of
writing, work is ongoing to address some shortcomings of the
[<a href="./rfc2865" title=""Remote Authentication Dial In User Service (RADIUS)"">RFC2865</a>] attribute regarding security protection.
o RADIUS over IPsec [<a href="./rfc3579" title=""RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)"">RFC3579</a>] enables the use of standard key-
management mechanisms, such as Kerberized Internet Negotiation of
Keys (KINK), the Internet Key Exchange Protocol (IKE), and IKEv2
[<a href="./rfc4306" title=""Internet Key Exchange (IKEv2) Protocol"">RFC4306</a>], to establish IPsec security associations.
Confidentiality protection MUST be used to prevent an eavesdropper
from gaining access to location information. Confidentiality
protection is already present for other reasons in many
environments, such as for the transport of keying material in the
context of Extensible Authentication Protocol (EAP) authentication
and authorization. Hence, this requirement is, in many
environments, already fulfilled. Mutual authentication MUST be
provided between neighboring RADIUS entities to prevent man-in-
the-middle attacks. Since mutual authentication is already
required for key transport within RADIUS messages, it does not
represent a deployment obstacle. Since IPsec protection is
already suggested as a mechanism to protect RADIUS, no additional
considerations need to be addressed beyond those described in
[<a href="./rfc3579" title=""RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)"">RFC3579</a>].
<span class="grey">Tschofenig, et al. Standards Track [Page 31]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-32" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
In case IPsec protection is not available for some reason and RADIUS-
specific security mechanisms have to be used, then the following
considerations apply. The Access-Request message is not integrity
protected. This would allow an adversary to change the contents of
the Location Object or to insert, modify, and delete attributes or
individual fields. To address these problems, the Message-
Authenticator (80) can be used to integrity protect the entire
Access-Request packet. The Message-Authenticator (80) is also
required when EAP is used and, hence, is supported by many modern
RADIUS servers.
Access-Request packets including location attribute(s) without a
Message-Authenticator (80) Attribute SHOULD be silently discarded by
the RADIUS server. A RADIUS server supporting location attributes
MUST calculate the correct value of the Message-Authenticator (80)
and MUST silently discard the packet if it does not match the value
sent.
Access-Accept messages, including location attribute(s), without a
Message-Authenticator (80) Attribute SHOULD be silently discarded by
the NAS. An NAS supporting location attributes MUST calculate the
correct value of a received Message-Authenticator (80) and MUST
silently discard the packet if it does not match the value sent.
RADIUS and Diameter make some assumptions about the trust between
traversed RADIUS entities in the sense that object-level security is
not provided by either RADIUS or Diameter. Hence, some trust has to
be placed on the RADIUS entities to behave according to the defined
rules. Furthermore, the RADIUS protocol does not involve the user in
their protocol interaction except for tunneling authentication
information (such as EAP messages) through their infrastructure.
RADIUS and Diameter have even become a de facto protocol for key
distribution for network-access authentication applications. Hence,
in the past there were some concerns about the trust placed into the
infrastructure -- particularly from the security area -- when it
comes to keying. The EAP keying infrastructure is described in
[<a href="./rfc4282" title=""The Network Access Identifier"">RFC4282</a>].
<span class="h3"><a class="selflink" id="section-7.2" href="#section-7.2">7.2</a>. Privacy Considerations</span>
This section discusses privacy implications for the distribution of
location information within RADIUS. Note also that it is possible
for the RADIUS server to obtain some amount of location information
from the NAS identifier. This document, however, describes
procedures to convey more accurate location information about the end
host and/or the network. In a number of deployment environments,
location information about the network also reveals the current
<span class="grey">Tschofenig, et al. Standards Track [Page 32]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-33" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
location of the user with a certain degree of precision, depending on
the location-determination mechanism used, the update frequency, the
size of the network, and other factors, such as movement traces.
Three types of use cases have to be differentiated:
o The RADIUS server does not want to receive location information
from the RADIUS client.
o In case there is an out-of-band agreement between the entity
responsible for the NAS and the entity operating the RADIUS
server, location information may be sent without an explicit
request from the RADIUS server.
o The RADIUS server dynamically requests location information from
the NAS.
<span class="h4"><a class="selflink" id="section-7.2.1" href="#section-7.2.1">7.2.1</a>. RADIUS Client</span>
The RADIUS client MUST behave according to the following guidelines:
o If neither an out-of-band agreement exists nor location
information is requested by the RADIUS server, then location
information is not disclosed by the RADIUS client.
o The RADIUS client MUST pass location information to other entities
(e.g., when information is written to a local database or to the
log files) only together with the policy rules. The entity
receiving the location information (together with the policies)
MUST follow the guidance given with these rules.
o A RADIUS client MUST include Basic-Location-Policy-Rules and
Extended-Location-Policy-Rules Attributes that are configured
within an Access-Request packet.
o NAS implementations supporting this specification, which are
configured to provide location information, MUST echo Basic-
Location-Policy-Rules and Extended-Location-Policy-Rules
Attributes unmodified within a subsequent Access-Request packet.
In addition, an Access-Request packet sent with a Service-Type
value of "Authorize Only" MUST include the Basic-Location-Policy-
Rules or Extended-Location-Policy-Rules Attributes that were
received in a previous Access-Accept if the FUTURE_REQUESTS flag
was set in the Requested-Location-Info Attribute.
<span class="grey">Tschofenig, et al. Standards Track [Page 33]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-34" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h4"><a class="selflink" id="section-7.2.2" href="#section-7.2.2">7.2.2</a>. RADIUS Server</span>
The RADIUS server is a natural place for storing authorization
policies since the user typically has some sort of trust relationship
with the entity operating the RADIUS server. Once the infrastructure
is deployed and location-aware applications are available, there
might be a strong desire to use location information for other
purposes as well.
The Common Policy framework [<a href="./rfc4745" title=""Common Policy: A Document Format for Expressing Privacy Preferences"">RFC4745</a>] that was extended for
geolocation privacy [<a href="#ref-GEO-POLICY" title=""Geolocation Policy: A Document Format for Expressing Privacy Preferences for Location Information"">GEO-POLICY</a>] is tailored for this purpose.
The Extensible Markup Language (XML) Configuration Access Protocol
(XCAP) [<a href="./rfc4825" title=""The Extensible Markup Language (XML) Configuration Access Protocol (XCAP)"">RFC4825</a>] gives users the ability to change their privacy
policies using a standardized protocol. These policies are an
important tool for limiting further distribution of the user's
location to other location-based services.
The RADIUS server MUST behave according to the following guidelines:
o The RADIUS server MUST attach available rules to the Access-
Accept, Access-Reject, or Access-Challenge message when the RADIUS
client is supposed to provide location information.
o When location information is made available to other entities
(e.g., writing to stable storage for later billing processing),
then the RADIUS server MUST attach the privacy rules to location
information.
<span class="h4"><a class="selflink" id="section-7.2.3" href="#section-7.2.3">7.2.3</a>. RADIUS Proxy</span>
A RADIUS proxy, behaving as a combined RADIUS client and RADIUS
server, MUST follow the rules described in Sections <a href="#section-7.2.1">7.2.1</a> and <a href="#section-7.2.2">7.2.2</a>.
<span class="h3"><a class="selflink" id="section-7.3" href="#section-7.3">7.3</a>. Identity Information and Location Information</span>
For the envisioned usage scenarios, the identity of the user and his
device is tightly coupled to the transfer of location information.
If the identity can be determined by the visited network or RADIUS
brokers, then it is possible to correlate location information with a
particular user. As such, it allows the visited network and brokers
to learn the movement patterns of users.
The user's identity can be "leaked" to the visited network or RADIUS
brokers in a number of ways:
o The user's device may employ a fixed Media Access Control (MAC)
address or base its IP address on such an address. This enables
the correlation of the particular device to its different
<span class="grey">Tschofenig, et al. Standards Track [Page 34]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-35" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
locations. Techniques exist to avoid the use of an IP address
that is based on a MAC address [<a href="./rfc4941" title=""Privacy Extensions for Stateless Address Autoconfiguration in IPv6"">RFC4941</a>]. Some link layers make
it possible to avoid MAC addresses or change them dynamically.
o Network-access authentication procedures, such as the PPP
Challenge Handshake Authentication Protocol (CHAP) [<a href="./rfc1994" title=""PPP Challenge Handshake Authentication Protocol (CHAP)"">RFC1994</a>] or
EAP [<a href="./rfc4187" title=""Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA)"">RFC4187</a>], may reveal the user's identity as a part of the
authentication procedure. Techniques exist to avoid this problem
in EAP methods, for instance by employing private Network Access
Identifiers (NAIs) [<a href="./rfc4282" title=""The Network Access Identifier"">RFC4282</a>] in the EAP Identity Response message
and by method-specific private identity exchanges in the EAP
method (e.g., [<a href="./rfc4187" title=""Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA)"">RFC4187</a>], [<a href="./rfc5281" title=""Extensible Authentication Protocol Tunneled Transport Layer Security Authenticated Protocol Version 0 (EAP- TTLSv0)"">RFC5281</a>], [<a href="#ref-PEAP" title=""Protected EAP Protocol (PEAP) Version 2"">PEAP</a>], and [<a href="./rfc5106" title=""The Extensible Authentication Protocol-Internet Key Exchange Protocol version 2 (EAP- IKEv2) Method"">RFC5106</a>]).
Support for identity privacy within CHAP is not available.
o RADIUS may return information from the home network to the visited
one in a manner that makes it possible to either identify the user
or at least correlate his session with other sessions, such as the
use of static data in a Class Attribute [<a href="./rfc2865" title=""Remote Authentication Dial In User Service (RADIUS)"">RFC2865</a>] or in some
accounting attribute usage scenarios [<a href="./rfc4372" title=""Chargeable User Identity"">RFC4372</a>].
o Mobility protocols may reveal some long-term identifier, such as a
home address.
o Application-layer protocols may reveal other permanent
identifiers.
To prevent the correlation of identities with location information,
it is necessary to prevent leakage of identity information from all
sources, not just one.
Unfortunately, most users are not educated about the importance of
identity confidentiality, and some protocols lack support for
identity-privacy mechanisms. This problem is made worse by the fact
that users may be unable to choose particular protocols, as the
choice is often dictated by the type of network operator they use,
the type of network they wish to access, the kind of equipment they
have, or the type of authentication method they are using.
A scenario where the user is attached to the home network is, from a
privacy point of view, simpler than a scenario where a user roams
into a visited network, since the NAS and the home RADIUS server are
in the same administrative domain. No direct relationship between
the visited and the home network operator may be available, and some
RADIUS brokers need to be consulted. With subscription-based network
access as used today, the user has a contractual relationship with
the home network provider that could (theoretically) allow higher
<span class="grey">Tschofenig, et al. Standards Track [Page 35]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-36" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
privacy considerations to be applied (including policy rules stored
at the home network itself, for the purpose of restricting further
distribution).
In many cases it is necessary to secure the transport of location
information along the RADIUS infrastructure. Mechanisms to achieve
this functionality are discussed in <a href="#section-7.1">Section 7.1</a>.
<span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>. IANA Considerations</span>
The Attribute Types and Attribute Values defined in this document
have been registered by the Internet Assigned Numbers Authority
(IANA) from the RADIUS namespaces as described in the "IANA
Considerations" section of <a href="./rfc3575">RFC 3575</a> [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], in accordance with <a href="https://www.rfc-editor.org/bcp/bcp26">BCP</a>
<a href="https://www.rfc-editor.org/bcp/bcp26">26</a> [<a href="./rfc5226" title="">RFC5226</a>]. Additionally, the Attribute Type has been registered
in the Diameter namespace. For RADIUS attributes and registries
created by this document, IANA placed them in the Radius Types
registry.
This document defines the following attributes:
Operator-Name
Location-Information
Location-Data
Basic-Location-Policy-Rules
Extended-Location-Policy-Rules
Location-Capable
Requested-Location-Info
Please refer to <a href="#section-5">Section 5</a> for the registered list of numbers.
IANA has also assigned a new value (509) for the Error-Cause
Attribute [<a href="./rfc5176" title=""Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)"">RFC5176</a>] of "Location-Info-Required" according to this
document.
Additionally, IANA created the following new registries listed in the
subsections below.
<span class="h3"><a class="selflink" id="section-8.1" href="#section-8.1">8.1</a>. New Registry: Operator Namespace Identifier</span>
This document also defines an Operator Namespace Identifier registry
(used in the Namespace ID field of the Operator-Name Attribute).
Note that this document requests IANA only to maintain a registry of
existing namespaces for use in this identifier field, and not to
establish any namespaces or place any values within namespaces.
<span class="grey">Tschofenig, et al. Standards Track [Page 36]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-37" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
IANA added the following values to the Operator Namespace Identifier
registry using a numerical identifier (allocated in sequence), a
token for the operator namespace, and a contact person for the
registry.
+----------+--------------------+------------------------------------+
|Identifier| Operator Namespace | Contact Person |
| | Token | |
+----------+--------------------+------------------------------------+
| 0x30 | TADIG | TD.13 Coordinator |
| | | (td13@gsm.org) |
| 0x31 | REALM | IETF O&M Area Directors |
| | | (ops-ads@ietf.org) |
| 0x32 | E212 | ITU Director |
| | | (tsbdir@itu.int) |
| 0x33 | ICC | ITU Director |
| | | (tsbdir@itu.int) |
+----------+--------------------+------------------------------------+
Note that the above identifier values represent the ASCII value '0'
(decimal 48 or hex 0x30), '1' (decimal 49, or hex 0x31), '2' (decimal
50, or hex 0x32), and '3' (decimal 51, or hex 0x33). This encoding
was chosen to simplify parsing.
Requests to IANA for a new value for a Namespace ID, i.e., values
from 0x34 to 0xFE, will be approved by Expert Review. A designated
expert will be appointed by the IESG.
The Expert Reviewer should ensure that a new entry is indeed required
or could fit within an existing database, e.g., whether there is a
real requirement to provide a token for a Namespace ID because one is
already up and running, or whether the REALM identifier plus the name
should be recommended to the requester. In addition, the Expert
Reviewer should ascertain to some reasonable degree of diligence that
a new entry is a correct reference to an operator namespace whenever
a new one is registered.
<span class="h3"><a class="selflink" id="section-8.2" href="#section-8.2">8.2</a>. New Registry: Location Profiles</span>
<a href="#section-4.2">Section 4.2</a> defines the Location-Information Attribute and a Code
field that contains an 8-bit integer value. Two values, zero and
one, are defined in this document, namely:
Value (0): Civic location profile described in <a href="#section-4.3.1">Section 4.3.1</a>
Value (1): Geospatial location profile described in <a href="#section-4.3.2">Section 4.3.2</a>
The remaining values are reserved for future use.
<span class="grey">Tschofenig, et al. Standards Track [Page 37]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-38" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Following the policies outlined in [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], the available bits with
a description of their semantics will be assigned after the Expert
Review process. Updates can be provided based on expert approval
only. Based on expert approval, it is possible to mark entries as
"deprecated". A designated expert will be appointed by the IESG.
Each registration must include the value and the corresponding
semantics of the defined location profile.
<span class="h3"><a class="selflink" id="section-8.3" href="#section-8.3">8.3</a>. New Registry: Location-Capable Attribute</span>
<a href="#section-4.6">Section 4.6</a> defines the Location-Capable Attribute that contains a
bit map. 32 bits are available, from which 4 bits are defined by this
document. This document creates a new IANA registry for the
Location-Capable Attribute. IANA added the following values to this
registry:
+----------+----------------------+
| Value | Capability Token |
+----------+----------------------+
| 1 | CIVIC_LOCATION |
| 2 | GEO_LOCATION |
| 4 | USERS_LOCATION |
| 8 | NAS_LOCATION |
+----------+----------------------+
Following the policies outlined in [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], the available bits with
a description of their semantics will be assigned after the Expert
Review process. Updates can be provided based on expert approval
only. Based on expert approval, it is possible to mark entries as
"deprecated". A designated expert will be appointed by the IESG.
Each registration must include:
Name:
Capability Token (i.e., an identifier of the capability)
Description:
Brief description indicating the meaning of the 'info' element.
Numerical Value:
A numerical value that is placed into the Capability Attribute
representing a bit in the bit-string of the Requested-Location-
Info Attribute.
<span class="grey">Tschofenig, et al. Standards Track [Page 38]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-39" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h3"><a class="selflink" id="section-8.4" href="#section-8.4">8.4</a>. New Registry: Entity Types</span>
<a href="#section-4.2">Section 4.2</a> defines the Location-Information Attribute that contains
an 8-bit Entity field. Two values are registered by this document,
namely:
Value (0) describes the location of the user's client device.
Value (1) describes the location of the RADIUS client.
All other values are reserved for future use.
Following the policies outlined in [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], the available bits with
a description of their semantics will be assigned after the Expert
Review process. Updates can be provided based on expert approval
only. Based on expert approval, it is possible to mark entries as
"deprecated". A designated expert will be appointed by the IESG.
Each registration must include the value and a corresponding
description.
<span class="h3"><a class="selflink" id="section-8.5" href="#section-8.5">8.5</a>. New Registry: Privacy Flags</span>
<a href="#section-4.4">Section 4.4</a> defines the Basic-Location-Policy-Rules Attribute that
contains flags indicating privacy settings. 16 bits are available,
from which a single bit, bit (0), indicating 'retransmission allowed'
is defined by this document. Bits 1-15 are reserved for future use.
Following the policies outline in [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], the available bits with
a description of their semantics will be assigned after the Expert
Review process. Updates can be provided based on expert approval
only. Based on expert approval, it is possible to mark entries as
"deprecated". A designated expert will be appointed by the IESG.
Each registration must include the bit position and the semantics of
the bit.
<span class="h3"><a class="selflink" id="section-8.6" href="#section-8.6">8.6</a>. New Registry: Requested-Location-Info Attribute</span>
<a href="#section-4.7">Section 4.7</a> defines the Requested-Location-Info Attribute that
contains a bit map. 32 bits are available, from which 6 bits are
defined by this document. This document creates a new IANA registry
for the Requested-Location-Info Attribute. IANA added the following
values to this registry:
<span class="grey">Tschofenig, et al. Standards Track [Page 39]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-40" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
+----------+----------------------+
| Value | Capability Token |
+----------+----------------------+
| 1 | CIVIC_LOCATION |
| 2 | GEO_LOCATION |
| 4 | USERS_LOCATION |
| 8 | NAS_LOCATION |
| 16 | FUTURE_REQUESTS |
| 32 | NONE |
+----------+----------------------+
The semantics of these values are defined in <a href="#section-4.7">Section 4.7</a>.
Following the policies outlined in [<a href="./rfc3575" title=""IANA Considerations for RADIUS (Remote Authentication Dial In User Service)"">RFC3575</a>], new Capability Tokens,
with a description of their semantics for usage with the Requested-
Location-Info Attribute, will be assigned after the Expert Review
process. Updates can be provided based on expert approval only.
Based on expert approval, it is possible to mark entries as
"deprecated". A designated expert will be appointed by the IESG.
Each registration must include:
Name:
Capability Token (i.e., an identifier of the capability)
Description:
Brief description indicating the meaning of the 'info' element.
Numerical Value:
A numerical value that is placed into the Capability Attribute
representing a bit in the bit-string of the Requested-Location-
Info Attribute.
<span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>. Acknowledgments</span>
The authors would like to thank the following people for their help
with an initial version of this document and for their input: Chuck
Black, Paul Congdon, Jouni Korhonen, Sami Ala-luukko, Farooq Bari, Ed
Van Horne, Mark Grayson, Jukka Tuomi, Jorge Cuellar, and Christian
Guenther.
<span class="grey">Tschofenig, et al. Standards Track [Page 40]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-41" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Henning Schulzrinne provided the civic location information content
found in this document. The geospatial location-information format
is based on work done by James Polk, John Schnizlein, and Marc
Linsner. The authorization policy format is based on the work done
by Jon Peterson.
The authors would like to thank Victor Lortz, Anthony Leibovitz, Jose
Puthenkulam, Bernrad Aboba, Jari Arkko, Parviz Yegani, Serge Manning,
Kuntal Chowdury, Pasi Eronen, Blair Bullock and Eugene Chang for
their feedback to an initial version of this document. We would like
to thank Jari Arkko for his textual contributions. Lionel Morand
provided detailed feedback on numerous issues. His comments helped
to improve the quality of this document. Jouni Korhonen, Victor
Fajardo, Tolga Asveren, and John Loughney helped us with the Diameter
RADIUS interoperability section. Andreas Pashalidis reviewed a later
version document and provided a number of comments. Alan DeKok,
Lionel Morand, Jouni Korhonen, David Nelson, and Emile van Bergen
provided guidance on the Requested-Location-Info Attribute and
participated in the capability-exchange discussions. Allison Mankin,
Jouni Korhonen, and Pasi Eronen provided text for the Operator
Namespace Identifier registry. Jouni Korhonen interacted with the
GSMA to find a contact person for the TADIG operator namespace, and
Scott Bradner consulted the ITU-T to find a contact person for the
E212 and the ICC operator namespace.
This document is based on the discussions within the IETF GEOPRIV
Working Group. Therefore, the authors thank Henning Schulzrinne,
James Polk, John Morris, Allison Mankin, Randall Gellens, Andrew
Newton, Ted Hardie, and Jon Peterson for their time discussing a
number of issues with us. We thank Stephen Hayes for aligning this
work with 3GPP activities.
We would like to thank members of the Wimax Forum Global Roaming
Working Group (GRWG) for their feedback on the Operator-Name
attribute. Ray Jong Kiem helped us with his detailed description to
correct the document.
The RADEXT Working Group chairs, David Nelson and Bernard Aboba,
provided several draft reviews and we would like to thank them for
the help and their patience.
Finally, we would like to thank Dan Romascanu, Glen Zorn, Russ
Housley, Jari Arkko, Ralph Droms, Adrial Farrel, Tim Polk, and Lars
Eggert for the IETF Last Call comments; Derek Atkins for his security
area directorate review; and Yoshiko Chong for spotting a bug in the
IANA Considerations section.
<span class="grey">Tschofenig, et al. Standards Track [Page 41]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-42" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>. References</span>
<span class="h3"><a class="selflink" id="section-10.1" href="#section-10.1">10.1</a>. Normative References</span>
[<a id="ref-RFC2119">RFC2119</a>] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", <a href="https://www.rfc-editor.org/bcp/bcp14">BCP 14</a>, <a href="./rfc2119">RFC 2119</a>, March 1997.
[<a id="ref-RFC2865">RFC2865</a>] Rigney, C., Willens, S., Rubens, A., and W. Simpson,
"Remote Authentication Dial In User Service (RADIUS)",
<a href="./rfc2865">RFC 2865</a>, June 2000.
[<a id="ref-RFC3492">RFC3492</a>] Costello, A., "Punycode: A Bootstring encoding of
Unicode for Internationalized Domain Names in
Applications (IDNA)", <a href="./rfc3492">RFC 3492</a>, March 2003.
[<a id="ref-RFC3575">RFC3575</a>] Aboba, B., "IANA Considerations for RADIUS (Remote
Authentication Dial In User Service)", <a href="./rfc3575">RFC 3575</a>,
July 2003.
[<a id="ref-RFC3588">RFC3588</a>] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and
J. Arkko, "Diameter Base Protocol", <a href="./rfc3588">RFC 3588</a>,
September 2003.
[<a id="ref-RFC3825">RFC3825</a>] Polk, J., Schnizlein, J., and M. Linsner, "Dynamic Host
Configuration Protocol Option for Coordinate-based
Location Configuration Information", <a href="./rfc3825">RFC 3825</a>,
July 2004.
[<a id="ref-RFC4776">RFC4776</a>] Schulzrinne, H., "Dynamic Host Configuration Protocol
(DHCPv4 and DHCPv6) Option for Civic Addresses
Configuration Information", <a href="./rfc4776">RFC 4776</a>, November 2006.
[<a id="ref-RFC5176">RFC5176</a>] Chiba, M., Dommety, G., Eklund, M., Mitton, D., and B.
Aboba, "Dynamic Authorization Extensions to Remote
Authentication Dial In User Service (RADIUS)",
<a href="./rfc5176">RFC 5176</a>, January 2008.
[<a id="ref-RFC5226">RFC5226</a>] Narten, T. and H. Alvestrand, "Guidelines for Writing
an IANA Considerations Section in RFCs", <a href="https://www.rfc-editor.org/bcp/bcp26">BCP 26</a>,
<a href="./rfc5226">RFC 5226</a>, May 2008.
<span class="h3"><a class="selflink" id="section-10.2" href="#section-10.2">10.2</a>. Informative References</span>
[<a id="ref-GEO-POLICY">GEO-POLICY</a>] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar,
J., and J. Polk, "Geolocation Policy: A Document Format
for Expressing Privacy Preferences for Location
Information", Work in Progress, February 2009.
<span class="grey">Tschofenig, et al. Standards Track [Page 42]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-43" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
[<a id="ref-GMLv3">GMLv3</a>] "Open Geography Markup Language (GML) Implementation
Specification", OGC 02-023r4, January 2003,
<<a href="http://www.opengis.org/techno/implementation.htm">http://www.opengis.org/techno/implementation.htm</a>>.
[<a id="ref-GSM">GSM</a>] "TADIG Naming Conventions", Version 4.1, GSM
Association Official Document TD.13, June 2006.
[<a id="ref-ISO">ISO</a>] "Codes for the representation of names of countries and
their subdivisions - Part 1: Country codes",
ISO 3166-1, 1997.
[<a id="ref-ITU1400">ITU1400</a>] "Designations for interconnections among operators'
networks", ITU-T Recommendation M.1400, January 2004.
[<a id="ref-ITU212">ITU212</a>] "The international identification plan for mobile
terminals and mobile users", ITU-T
Recommendation E.212, May 2004.
[<a id="ref-PEAP">PEAP</a>] Josefsson, S., Palekar, A., Simon, D., and G. Zorn,
"Protected EAP Protocol (PEAP) Version 2", Work
in Progress, October 2004.
[<a id="ref-RFC1305">RFC1305</a>] Mills, D., "Network Time Protocol (Version 3)
Specification, Implementation", <a href="./rfc1305">RFC 1305</a>, March 1992.
[<a id="ref-RFC1994">RFC1994</a>] Simpson, W., "PPP Challenge Handshake Authentication
Protocol (CHAP)", <a href="./rfc1994">RFC 1994</a>, August 1996.
[<a id="ref-RFC2866">RFC2866</a>] Rigney, C., "RADIUS Accounting", <a href="./rfc2866">RFC 2866</a>, June 2000.
[<a id="ref-RFC3579">RFC3579</a>] Aboba, B. and P. Calhoun, "RADIUS (Remote
Authentication Dial In User Service) Support For
Extensible Authentication Protocol (EAP)", <a href="./rfc3579">RFC 3579</a>,
September 2003.
[<a id="ref-RFC3693">RFC3693</a>] Cuellar, J., Morris, J., Mulligan, D., Peterson, J.,
and J. Polk, "Geopriv Requirements", <a href="./rfc3693">RFC 3693</a>,
February 2004.
[<a id="ref-RFC4005">RFC4005</a>] Calhoun, P., Zorn, G., Spence, D., and D. Mitton,
"Diameter Network Access Server Application", <a href="./rfc4005">RFC 4005</a>,
August 2005.
[<a id="ref-RFC4017">RFC4017</a>] Stanley, D., Walker, J., and B. Aboba, "Extensible
Authentication Protocol (EAP) Method Requirements for
Wireless LANs", <a href="./rfc4017">RFC 4017</a>, March 2005.
<span class="grey">Tschofenig, et al. Standards Track [Page 43]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-44" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
[<a id="ref-RFC4072">RFC4072</a>] Eronen, P., Hiller, T., and G. Zorn, "Diameter
Extensible Authentication Protocol (EAP) Application",
<a href="./rfc4072">RFC 4072</a>, August 2005.
[<a id="ref-RFC4119">RFC4119</a>] Peterson, J., "A Presence-based GEOPRIV Location Object
Format", <a href="./rfc4119">RFC 4119</a>, December 2005.
[<a id="ref-RFC4187">RFC4187</a>] Arkko, J. and H. Haverinen, "Extensible Authentication
Protocol Method for 3rd Generation Authentication and
Key Agreement (EAP-AKA)", <a href="./rfc4187">RFC 4187</a>, January 2006.
[<a id="ref-RFC4282">RFC4282</a>] Aboba, B., Beadles, M., Arkko, J., and P. Eronen, "The
Network Access Identifier", <a href="./rfc4282">RFC 4282</a>, December 2005.
[<a id="ref-RFC4306">RFC4306</a>] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol",
<a href="./rfc4306">RFC 4306</a>, December 2005.
[<a id="ref-RFC4372">RFC4372</a>] Adrangi, F., Lior, A., Korhonen, J., and J. Loughney,
"Chargeable User Identity", <a href="./rfc4372">RFC 4372</a>, January 2006.
[<a id="ref-RFC4745">RFC4745</a>] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar,
J., Polk, J., and J. Rosenberg, "Common Policy: A
Document Format for Expressing Privacy Preferences",
<a href="./rfc4745">RFC 4745</a>, February 2007.
[<a id="ref-RFC4825">RFC4825</a>] Rosenberg, J., "The Extensible Markup Language (XML)
Configuration Access Protocol (XCAP)", <a href="./rfc4825">RFC 4825</a>,
May 2007.
[<a id="ref-RFC4941">RFC4941</a>] Narten, T., Draves, R., and S. Krishnan, "Privacy
Extensions for Stateless Address Autoconfiguration in
IPv6", <a href="./rfc4941">RFC 4941</a>, September 2007.
[<a id="ref-RFC5106">RFC5106</a>] Tschofenig, H., Kroeselberg, D., Pashalidis, A., Ohba,
Y., and F. Bersani, "The Extensible Authentication
Protocol-Internet Key Exchange Protocol version 2 (EAP-
IKEv2) Method", <a href="./rfc5106">RFC 5106</a>, February 2008.
[<a id="ref-RFC5281">RFC5281</a>] Funk, P. and S. Blake-Wilson, "Extensible
Authentication Protocol Tunneled Transport Layer
Security Authenticated Protocol Version 0 (EAP-
TTLSv0)", <a href="./rfc5281">RFC 5281</a>, August 2008.
<span class="grey">Tschofenig, et al. Standards Track [Page 44]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-45" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
<span class="h2"><a class="selflink" id="appendix-A" href="#appendix-A">Appendix A</a>. Matching with GEOPRIV Requirements</span>
This section compares the requirements for a GEOPRIV using protocol,
described in [<a href="./rfc3693" title=""Geopriv Requirements"">RFC3693</a>], against the approach of distributing Location
Objects with RADIUS.
In Appendices A.1 and A.2, we discuss privacy implications when
RADIUS entities make location information available to other parties.
In <a href="#appendix-A.3">Appendix A.3</a>, the requirements are matched against these two
scenarios.
<span class="h3"><a class="selflink" id="appendix-A.1" href="#appendix-A.1">A.1</a>. Distribution of Location Information at the User's Home Network</span>
When location information is conveyed from the RADIUS client to the
RADIUS server, then it might subsequently be made available for
different purposes. This section discusses the privacy implications
for making location information available to other entities.
To use a more generic scenario, we assume that the visited RADIUS and
the home RADIUS server belong to different administrative domains.
The Location Recipient obtains location information about a
particular Target via protocols specified outside the scope of this
document (e.g., SIP, HTTP, or an API).
The subsequent figure shows the interacting entities graphically.
visited network | home network
|
| +----------+
| | Rule |
| | Holder |
| +----+-----+
| |
| rule|interface
+----------+ | V +----------+
|Location | | +----------+ notification |Location |
|Generator | | |Location |<------------->|Recipient |
+----------+ publication |Server | interface | |
|RADIUS |<------------->+----------+ +----------+
|Client | interface |RADIUS | E.g., SIP/HTTP
+----------+ | |Server |
| +----------+
E.g., NAS RADIUS
|
|
Figure 8: Location Server at the Home Network
<span class="grey">Tschofenig, et al. Standards Track [Page 45]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-46" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
The term 'Rule Holder' in Figure 8 denotes the entity that creates
the authorization ruleset.
<span class="h3"><a class="selflink" id="appendix-A.2" href="#appendix-A.2">A.2</a>. Distribution of Location Information at the Visited Network</span>
This section describes a scenario where location information is made
available to Location Recipients by a Location Server in the visited
network. Some identifier needs to be used as an index within the
location database. One possible identifier is the Network Access
Identifier. <a href="./rfc4282">RFC 4282</a> [<a href="./rfc4282" title=""The Network Access Identifier"">RFC4282</a>] and <a href="./rfc4372">RFC 4372</a> [<a href="./rfc4372" title=""Chargeable User Identity"">RFC4372</a>] provide
background regarding whether entities in the visited network can
obtain the user's NAI in cleartext.
The visited network provides location information to a Location
Recipient (e.g., via SIP or HTTP). This document enables the NAS to
obtain the user's privacy policy via the interaction with the RADIUS
server. Otherwise, only default policies, which are very
restrictive, are available. This allows the Location Server in the
visited network to ensure they act according to the user's policies.
The subsequent figure shows the interacting entities graphically.
<span class="grey">Tschofenig, et al. Standards Track [Page 46]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-47" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
visited network | home network
|
+----------+ |
|Location | |
|Recipient | |
| | |
+----------+ |
^ | +----------+
| | | Rule |
notification | | Holder |
interface | | |
| | +----+-----+
| | |
| | rule|interface
v | |
+----------+ | |
|Location | | v
|Server | | +----------+
+----------+ Rule Transport|RADIUS |
|RADIUS |<------------->|Server |
|Client | RADIUS +----------+
+----------+ |
|Location | |
|Generator |
+----------+
Figure 9: Location Server at the Visited Network
Location information always travels with privacy policies. This
document enables the RADIUS client to obtain these policies. The
Location Server can subsequently act according to these policies to
provide access control using the Extended-Location-Policy-Rules and
to adhere to the privacy statements in the Basic-Location-Policy-
Rules.
<span class="h3"><a class="selflink" id="appendix-A.3" href="#appendix-A.3">A.3</a>. Requirements Matching</span>
<a href="./rfc3693#section-7.1">Section 7.1 of [RFC3693]</a> details the requirements of a "Location
Object". We discuss these requirements in the subsequent list.
Req. 1. (Location Object generalities):
* Regarding requirement 1.1, the syntax and semantics of the
Location Object are taken from [<a href="./rfc3825" title=""Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information"">RFC3825</a>] and [<a href="./rfc4776" title=""Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Option for Civic Addresses Configuration Information"">RFC4776</a>]. It is
furthermore possible to convert it to the format used in the
Geography Markup Language (GMLv3) [<a href="#ref-GMLv3" title=""Open Geography Markup Language (GML) Implementation Specification"">GMLv3</a>], as used with PIDF-LO
[<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>].
<span class="grey">Tschofenig, et al. Standards Track [Page 47]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-48" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
* Regarding requirement 1.2, a number of fields in the civic
location-information format are optional.
* Regarding requirement 1.3, the inclusion of type of place item
(CAtype 29) used in the DHCP civic format gives a further
classification of the location. This attribute can be seen as
an extension.
* Regarding requirement 1.4, this document does not define the
format of the location information.
* Regarding requirement 1.5, location information is only sent
from the RADIUS client to the RADIUS server.
* Regarding requirement 1.6, the Location Object contains both
location information and privacy rules. Location information
is described in Sections <a href="#section-4.2">4.2</a>, <a href="#section-4.3.1">4.3.1</a>, and <a href="#section-4.3.2">4.3.2</a>. The
corresponding privacy rules are detailed in Sections <a href="#section-4.4">4.4</a> and
4.5.
* Regarding requirement 1.7, the Location Object is usable in a
variety of protocols. The format of the object is reused from
other documents, as detailed in Sections <a href="#section-4.2">4.2</a>, <a href="#section-4.3.1">4.3.1</a>, <a href="#section-4.3.2">4.3.2</a>,
4.4, and 4.5.
* Regarding requirement 1.8, the encoding of the Location Object
has an emphasis on a lightweight encoding format to be used
with RADIUS.
Req. 2. (Location Object fields):
* Regarding requirement 2.1, the target identifier is carried
within the network-access authentication protocol (e.g., within
the EAP-Identity Response when EAP is used and/or within the
EAP method itself). As described in <a href="#section-7.2">Section 7.2</a> of this
document, it has a number of advantages if this identifier is
not carried in clear. This is possible with certain EAP
methods whereby the identity in the EAP-Identity Response only
contains information relevant for routing the response to the
user's home network. The user identity is protected by the
authentication and key exchange protocol.
* Regarding requirement 2.2, the Location Recipient is, in the
main scenario, the home RADIUS server. For a scenario where
the Location Recipient is obtaining location information from
the Location Server via HTTP or SIP, the respective mechanisms
<span class="grey">Tschofenig, et al. Standards Track [Page 48]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-49" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
defined in these protocols are used to identify the recipient.
The Location Generator cannot, a priori, know the recipients if
they are not defined in this protocol.
* Regarding requirement 2.3, the credentials of the Location
Recipient are known to the RADIUS entities based on the
security mechanisms defined in the RADIUS protocol itself.
<a href="#section-7">Section 7</a> of this document describes these security mechanisms
offered by the RADIUS protocol. The same is true for
requirement 2.4.
* Regarding requirement 2.5, Sections <a href="#section-4.2">4.2</a>, <a href="#section-4.3.1">4.3.1</a>, and <a href="#section-4.3.2">4.3.2</a>
describe the content of the Location fields. Since the
location format itself is not defined in this document, motion
and direction vectors as listed in requirement 2.6 are not
defined.
* Regarding requirement 2.6, this document provides the
capability for the RADIUS server to indicate what type of
location information it would like to see from the RADIUS
client.
* Regarding requirement 2.7, timing information is provided with
the 'Sighting Time' and 'Time-to-Live' fields defined in
<a href="#section-4.2">Section 4.2</a>.
* Regarding requirement 2.8, a reference to an external (more
detailed ruleset) is provided with the Extended-Location-
Policy-Rules Attribute in <a href="#section-4.5">Section 4.5</a>.
* Regarding requirement 2.9, security headers and trailers are
provided as part of the RADIUS protocol or even as part of
IPsec.
* Regarding requirement 2.10, a version number in RADIUS is
provided with the IANA registration of the attributes. New
attributes are assigned a new IANA number.
Req. 3. (Location Data Types):
* Regarding requirement 3.1, this document reuses civic and
geospatial location information as described in Sections <a href="#section-4.3.2">4.3.2</a>
and 4.3.1.
* With the support of civic and geospatial location information,
support of requirement 3.2 is fulfilled.
<span class="grey">Tschofenig, et al. Standards Track [Page 49]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-50" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
* Regarding requirement 3.3, the geospatial location information
used by this document only refers to absolute coordinates.
However, the granularity of the location information can be
reduced with the help of the AltRes, LoRes, and LaRes fields
described in [<a href="./rfc3825" title=""Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information"">RFC3825</a>].
* Regarding requirement 3.4, further Location Data Types can be
added via new coordinate reference systems (CRSs -- see the
Datum field in [<a href="./rfc3825" title=""Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information"">RFC3825</a>]) and via extensions to [<a href="./rfc3825" title=""Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information"">RFC3825</a>] and
[<a href="./rfc4776" title=""Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Option for Civic Addresses Configuration Information"">RFC4776</a>].
<a href="./rfc3693#section-7.2">Section 7.2 of [RFC3693]</a> details the requirements of a "using
protocol". These requirements are listed below.
Req. 4.: The using protocol has to obey the privacy and security
instructions coded in the Location Object (LO) regarding the
transmission and storage of the LO. This document requires that
entities that aim to make location information available to third
parties be required to obey the privacy instructions.
Req. 5.: The using protocol will typically facilitate that the keys
associated with the credentials are transported to the respective
parties, that is, key establishment is the responsibility of the
using protocol. <a href="#section-7">Section 7</a> of this document specifies how security
mechanisms are used in RADIUS and how they can be reused to
provide security protection for the Location Object.
Additionally, the privacy considerations (see <a href="#section-7.2">Section 7.2</a>) are
also relevant for this requirement.
Req. 6. (Single Message Transfer): In particular, for tracking of
small target devices, the design should allow a single message/
packet transmission of location as a complete transaction. The
encoding of the Location Object is specifically tailored towards
the inclusion into a single message that even respects the (Path)
MTU size.
<a href="./rfc3693#section-7.3">Section 7.3 of [RFC3693]</a> details the requirements of a "Rule-based
Location Data Transfer". These requirements are listed below.
Req. 7. (LS Rules): With the scenario shown in Figure 8, the
decision of a Location Server to provide a Location Recipient
access to location information is based on Rule Maker-defined
privacy rules that are stored at the home network. With regard to
the scenario shown in Figure 9, the Rule Maker-defined privacy
rules are sent from the RADIUS server to the NAS (see Sections
4.4, 4.5, and 7.2 for more details).
<span class="grey">Tschofenig, et al. Standards Track [Page 50]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-51" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Req. 8. (LG Rules): For all usage scenarios, it is possible to
consider the privacy rule before transmitting location information
from the NAS to the RADIUS server or even to third parties. In
the case of an out-of-band agreement between the owner of the NAS
and the owner of the RADIUS server, privacy might be applied on a
higher granularity. For the scenario shown in Figure 8, the
visited network is already in possession of the user's location
information prior to the authentication and authorization of the
user. A correlation between the location and the user identity
might, however, still not be possible for the visited network (as
explained in <a href="#section-7.2">Section 7.2</a>). A Location Server in the visited
network has to evaluate available rulesets.
Req. 9. (Viewer Rules): The Rule Maker might define (via mechanisms
outside the scope of this document) which policy rules are
disclosed to other entities.
Req. 10. (Full Rule language): GEOPRIV has defined a rule language
capable of expressing a wide range of privacy rules that is
applicable in the area of the distribution of Location Objects. A
basic ruleset is provided with the Basic-Location-Policy-Rules
Attribute (<a href="#section-4.4">Section 4.4</a>). A reference to the extended ruleset is
carried in <a href="#section-4.5">Section 4.5</a>. The format of these rules is described in
[<a href="./rfc4745" title=""Common Policy: A Document Format for Expressing Privacy Preferences"">RFC4745</a>] and [<a href="#ref-GEO-POLICY" title=""Geolocation Policy: A Document Format for Expressing Privacy Preferences for Location Information"">GEO-POLICY</a>].
Req. 11. (Limited Rule language): A limited (or basic) ruleset is
provided by the Policy-Information Attribute in <a href="#section-4.4">Section 4.4</a> (and
as introduced with PIDF-LO [<a href="./rfc4119" title=""A Presence-based GEOPRIV Location Object Format"">RFC4119</a>]).
<a href="./rfc3693#section-7.4">Section 7.4 of [RFC3693]</a> details the requirements of a "Location
Object Privacy and Security". These requirements are listed below.
Req. 12 (Identity Protection): Support for unlinkable pseudonyms is
provided by the usage of a corresponding authentication and key-
exchange protocol. Such protocols are available, for example,
with the support of EAP as network-access authentication methods.
Some EAP methods support passive user-identity confidentiality,
whereas others even support active user-identity confidentiality.
This issue is further discussed in <a href="#section-7">Section 7</a>. The importance for
user-identity confidentiality and identity protection has already
been recognized as an important property (see, for example, a
document on EAP method requirements for wireless LANs [<a href="./rfc4017" title=""Extensible Authentication Protocol (EAP) Method Requirements for Wireless LANs"">RFC4017</a>]).
Req. 13. (Credential Requirements): As described in <a href="#section-7">Section 7</a> ,
RADIUS signaling messages can be protected with IPsec. This
allows a number of authentication and key exchange protocols to be
used as part of IKE, IKEv2, or KINK.
<span class="grey">Tschofenig, et al. Standards Track [Page 51]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-52" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Req. 14. (Security Features): GEOPRIV defines a few security
requirements for the protection of Location Objects, such as
mutual end-point authentication, data object integrity, data
object confidentiality, and replay protection. As described in
<a href="#section-7">Section 7</a>, these requirements are fulfilled with the usage of
IPsec if mutual authentication refers to the RADIUS entities
(acting as various GEOPRIV entities) that directly communicate
with each other.
Req. 15. (Minimal Crypto): A minimum of security mechanisms are
mandated by the usage of RADIUS. Communication security for
Location Objects between RADIUS infrastructure elements is
provided by the RADIUS protocol (including IPsec and its dynamic
key-management framework), rather than relying on object security
via S/SIME (which is not available with RADIUS).
<span class="grey">Tschofenig, et al. Standards Track [Page 52]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-53" ></span>
<span class="grey"><a href="./rfc5580">RFC 5580</a> Carrying LOs in RADIUS and Diameter August 2009</span>
Authors' Addresses
Hannes Tschofenig (editor)
Nokia Siemens Networks
Linnoitustie 6
Espoo 02600
Finland
Phone: +358 (50) 4871445
EMail: Hannes.Tschofenig@gmx.net
URI: <a href="http://www.tschofenig.priv.at">http://www.tschofenig.priv.at</a>
Farid Adrangi
Intel Corporatation
2111 N.E. 25th Avenue
Hillsboro OR
USA
EMail: farid.adrangi@intel.com
Mark Jones
Bridgewater Systems Corporation
303 Terry Fox Drive
Ottawa, Ontario K2K 3J1
CANADA
EMail: mark.jones@bridgewatersystems.com
Avi Lior
Bridgewater Systems Corporation
303 Terry Fox Drive
Ottawa, Ontario K2K 3J1
CANADA
EMail: avi@bridgewatersystems.com
Bernard Aboba
Microsoft Corporation
One Microsoft Way
Redmond, WA 98052
USA
EMail: bernarda@microsoft.com
Tschofenig, et al. Standards Track [Page 53]
</pre>
|